function decodmsg = bolicanpu(t,k,shoumazi)
%% 构造伽罗华域
m=6;
n=2^m-1;
p=(de2bi(primpoly(m),m+1));
a_gf=gf(0:(2^(length(p)-1)-1),length(p)-1,bi2de(p));
p_test=seqreverse(p_tongyu(p));
p_test_de(:,2)=bi2de(seqreverse(p_test));
p_test_de(:,1)=-1:n-1; %GF(2^6)
%% 译码
for q=1:size(shoumazi,1)
%% 计算伴随式
s=zeros(2*t,m);s_order=zeros(2*t,1);
for j=1:2*t
for i=1:n
if shoumazi(q,i)~=0
s(j,:)=gfadd(s(j,:),p_test(mod(j*(n-i),n)+2,:),2);
end
end
s_order(j,1)=find(bi2de(seqreverse(s(j,:)))==p_test_de(:,2))-2; %减2是为了保证s_order中存储的是x的阶数
end
%% 求解delta(x)
s=bi2de(seqreverse(s))'; %伴随式转成十进制
f=a_gf(1:length(s));
for i=1:length(s)
f(i)=a_gf(s(i)+1);
end
s=f;e=length(s)/2;
S_buf=zeros(e,e+1);
S_buf=gf(S_buf,m);
for i=1:e
S_buf(i,:)=s(e+i:-1:i);
end
S_buf=S_buf';
S=[S_buf(2:e+1,1:e);S_buf(1,:)]';
[S_type,e] = zg_jie(S,e);
[~,b]=size(S_type);
delta=S_type(:,b)';
delta_x_final=zeros(1,length(delta));
buf=delta.x;
for i=1:length(delta)
a=find(buf(1,i)==p_test_de(:,2));
delta_x_final(1,i)=a-2;
end
%% 钱氏搜索法计算delta(x)=0的根以及错误位置
delta_x_root=zeros(length(delta_x_final),1);
hang=zeros(length(delta_x_final),1);
dxs=zeros(length(delta_x_final),m);
cishu=zeros(1,length(delta_x_final));
j=1;
for i=1:n
zhi=zeros(1,m);
for z=1:length(delta_x_final)
cishu(1,z)=mod(delta_x_final(1,z)+z*i,n);
end
for z=1:length(delta_x_final)
hang(z,:)=find(cishu(1,z)==p_test_de(:,1));
end
for z=1:length(delta_x_final)
dxs(z,:)=seqreverse(de2bi(p_test_de(hang(z,:),2),m));
end
for z=1:length(delta_x_final)
zhi=mod(gfadd(zhi,dxs(z,:),2),2);
end
zhi=bi2de(seqreverse(zhi));
if (zhi==1)
delta_x_root(j,:)=i;
j=j+1;
end
end
error_location=n-delta_x_root; %确定最后错误位置数
%% 译码结果
e_x=zeros(1,n);
for v=1:length(delta_x_root)
if((delta_x_root(v))~=0)
e_x=mod(seqreverse((de2bi(2^(error_location(v)),n)))+e_x,2);
end
end
shoumazi(q,:)=mod(shoumazi(q,:)+e_x,2);
end
%% 提取信息位
for q=1:size(shoumazi,1)
decodmsg(1,(k*(q-1)+1):k*q)=shoumazi(q,1:k);
end
end
没有合适的资源?快使用搜索试试~ 我知道了~
BCH码编译码.zip_BCH 误码率_BCH码性能比较_BCH码比较_BCH码误码率_bch码性能仿真
共11个文件
m:10个
docx:1个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
5星 · 超过95%的资源 2 下载量 166 浏览量
2022-07-15
05:33:51
上传
评论
收藏 7KB ZIP 举报
温馨提示
仿真了编程bch的编译码的过程,统计了误码率,性能比较
资源推荐
资源详情
资源评论
收起资源包目录
BCH码编译码.zip (11个子文件)
BCH码编译码
p_tongyu.m 263B
~$CH码编译码.docx 162B
bolicanpu.m 2KB
leng.m 252B
BCH_encode.m 755B
div.m 658B
BCH_decoder.m 2KB
zg_jie.m 477B
mul.m 371B
petersen.m 2KB
BCH_PASS_BSC.m 2KB
共 11 条
- 1
资源评论
- 磊(*^ワ^*)2024-05-26内容与描述一致,超赞的资源,值得借鉴的内容很多,支持!
- 这个女巫有点甜2024-04-16感谢大佬分享的资源,对我启发很大,给了我新的灵感。
四散
- 粉丝: 54
- 资源: 1万+
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- meta-llama-3-8b-instruct 的 model-00001-of-00004.safetensors 的2/3
- HTML5小游戏【小鸡飞-蛋蛋跳小游戏】游戏源码分享下载 - dandan.zip
- Hi3861 OpenHarmony 机械臂 (一)
- 生成的DNA序列来摸拟查找特定基因序列.py
- 12345666666666
- 基于协同过滤算法的英语学习平台(springboot+ssm+html+mysql)含运行文档+运行截图+演示视频
- 基于NCP1377芯片 AC220V转DC12V(5A)反激开关电源ALTIUM设计硬件(原理图+PCB)工程文件.zip
- NX二次开发头文件与库目录
- 网络调试助手,最新版本,方便大家调试网络功能
- mysql语句大全及用法
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功