bch码编译码matlab仿真

bch码编译码matlab仿真

ID:10547937

大小:202.37 KB

页数:9页

时间:2018-07-07

bch码编译码matlab仿真_第1页
bch码编译码matlab仿真_第2页
bch码编译码matlab仿真_第3页
bch码编译码matlab仿真_第4页
bch码编译码matlab仿真_第5页
资源描述:

《bch码编译码matlab仿真》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、信道编码姓名:郭宇琦学号:xxx2009xxx一、实验目的1.复习巩固BCH码编码译码知识。2.使用matlab进行实践编写BCH,了解实际应用中BCH的编码译码过程。3.结合实践验证所学BCH码知识。二、实验原理BCH码是用于校正多个随机错误的多级、循环、错误校正、变长数字编码,是循环码的子类。本原BCH码编码原理如下:1.确定n、m、t.2.用函数构造扩域,q=2取二进制,3.取本原元,根据纠错能力t,确定连续根。通过逐个验证每个元素来找出每一个根的全部共轭根系。根据计算最小多项式。4.所有非共轭根系的最小多项式乘积得到生成多项式5

2、.利用系统码编码方程,进行编码。BCH码译码方法主要有Peterson译码法和Berlekamp迭代译码法等,其中Peterson译码方法如下:1.计算伴随式。已知接受向量,则2.求解错误位置。引入错误位置多项式,将求解错误位置的问题转化为求解线性方程组的问题3.用Peterson译码方法译码,解出错误位置多项式系数和错误图样,得到估值码字。(1).假设e=t,计算S行列式M的值。M=0则降阶,e=e-1,同样计算直到M≠0.(2)将上面得到的2t个连续根代入试根,求上述方程组解。取倒数即为错误位置。由此写出错误图样。(3)求出译码。每

3、一步具体的实现方法,详见程序源代码注释。一、程序框图编码框图过信道框图译码框图一、实验结果分析结果截图:上面是较高信噪比时127位BCH正确译码下面是较低信噪比时127为BCH错误译码结果框内容(加粗部分是手动输入内容,下划线是结果重点):---简易BCH编码译码系统---输入码长n=128错误:只支持本原BCH码输入码长n=127输入纠错能力t=6计算得码长k=85自动生成随机信息序列输入1,手动键入信息序列输入0:1随机生成的序列为m=0010101101010000011001101111001000111110110000000

4、001111111010100001101110111010111011编码后生成码序列为0010101101010000011001101111001000111110110000000001111111010100001101110111010111011100100100001001000010111100101011010101110过高斯白信道输入1,过理想信道输入0:1输入信道信噪比(单位分贝,15左右较合适):10接收码字为00101011010100000110011011110010001111101100000000

5、01111111110100001101110111010111001100100100001001000010111100101110010101110发送码字为0010101101010000011001101111001000111110110000000001111111010100001101110111010111011100100100001001000010111100101011010101110通过信道后出错4位错误图样为000000000000000000000000000000000000000000000000

6、0000000000100000000000000000000000010000000000000000000000000000000101000000000译码结果为0010101101010000011001101111001000111110110000000001111111010100001101110111010111011100100100001001000010111100101011010101110还原信息序列为m’=00101011010100000110011011110010001111101100000000

7、01111111010100001101110111010111011译码正确一、实验小结整个过程严格按照所学BCH码相关知识编写,所得结论完全正确。二、源代码clcclearall%----------------------------------------------disp('---简易BCH编码译码系统---')flag=1;while(flag)%输入nn=input('输入码长n=');m=0;while(2^m-1~=n&&m<20)%计算mm=m+1;endif(m==20)%非本原就重新输入disp('错误:只支持

8、本原BCH码')elseflag=0;endendflag=1;while(flag)%输入tt=input('输入纠错能力t=');if((t>=floor((n-1)/2))

9、

10、(t<=0))disp(

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。