下载此文档

利用Matlab进行BCH编码、译码仿真.pdf


文档分类:通信/电子 | 页数:约7页 举报非法文档有奖
1/7
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/7 下载此文档
文档列表 文档介绍
该【利用Matlab进行BCH编码、译码仿真 】是由【haha】上传分享,文档一共【7】页,该文档可以免费在线阅读,需要了解更多关于【利用Matlab进行BCH编码、译码仿真 】的内容,可以使用淘豆网的站内搜索功能,选择自己适合的文档,以下文字是截取该文章内的部分文字,如需要获得完整电子版,请下载此文档到您的设备,方便您编辑和打印。.
利用Matlab进展BCH编码、译码仿真

〔1〕掌握BCH编码、译码。
〔2〕通过Matlab仿真,加深对BCH编码理解。
〔3〕锻炼运用所学知识,独立分析问题、解决问题的综合能力。
1
.

了解BCH编码是建立在严格的代数数学根底上的,就有限域和扩域
进展了介绍;就BCH码相关的根底知识〔BCH码定义、码长、生
成多项式等等〕进展学****了解BCH码的编码和译码过程;介绍了
彼得森译码算法程序框图,了解彼得森译码的过程与原理。最后利用
Matlab编程分析BFSK在加性高斯白噪声信道的误码率性能;通过
Simulink建立BFSK+信道编码〔取BCH码〕在加性高斯白噪声信
道下的仿真模型,从信源—BCH编码—BPSK调制—高斯信道
—BPSK解调—BCH译码—信宿,设置好每个模块的参数,编写好
主程序实现BFSK的输入,在程序运行过程中间调用BFSK仿真模
型,仿真结果出现没有经过BCH编码的误码率曲线图和经过BCH
编码后的误码率曲线图,根据仿真误码率曲线走势进展分析,注意分
析不同的纠能错力对误码率性能的影响,不同的纠能错力对译码复杂
度的影响〔用译码的时间长短作为对其复杂度影响的参数,时间长则
说明复杂度大,〕通过分析后得出结论进展总结、展望。

BCH码定义:
BCH码1959年由Hocquenghem、1960年由Bose和
Chandhari分别独立提出。BCH码是能够纠正多个随机错误的循环
码,可以用生成多项式g(*)的根描述。给定任一有限域GF(q)及其
扩域GF(qm),其中q是素数或或者*一素数的幂,m为*一正整数。
设='GF(2m),l是任意整数,是GF(2m)的根源元,假设V是
1
.
码元取自GF(2)上码长为n的循环码,他的生成多项式g〔*〕含有
以下2t个根
、2、、、2t,
则由g〔*〕生成的循环码称为二元BCH码,假设、2、、、2t中
有一个是本原元,则g〔*〕生成的码称为本原BCH码。要考虑g〔*〕
能否生本钱原BCH码,将要考虑、2、、、2t中是否有一个根源元,
实际上只要考虑是本原元,g〔*〕生本钱原BCH码,假设不是
本原元,则i也一定不是本原元,因而生本钱原BCH码。
设i阶为e,i=1,2,3,、、、,2t,则以、2、、、2t为根的
i
BCH码的码长
N=LCM(e,e,….e)。
122t
假设、2、、、2t的极小多项式分别为m〔*〕,m〔*〕,…,m〔*〕.
122t
〔*〕
以、2、、、2t为根的BCH码的生成多项式可以写成g〔*〕
=LCM〔m〔*〕,m〔*〕,…m〔*〕〕,由极小多项式的性质可以知
122t
道,i与(i)的平方,有一样的极小多项式,因此以、2、、、2t为
根的BCH码的生成多项式可以简化成
g〔*〕=LCM〔m〔*〕,m〔*〕,…m〔*〕〕
132t1
这个g〔*〕=LCM〔m〔*〕,m〔*〕,…m〔*〕〕中多以取最小公
122t
倍,是要在m〔*〕,m〔*〕,…m〔*〕中去掉那些一样的极小多项
122t
式,既然g〔*〕=LCM〔m〔*〕,m〔*〕,…m〔*〕〕中已经把i
132t1
的极小多项式一样的去掉啦,是否可以把g〔*〕=LCM〔m〔*〕,m
13
〔*〕,…m〔*〕〕中最小公倍符号省略,直接写成m〔*〕,m〔*〕,…m
2t1132t1
〔*〕的形式,答复是否认的,这是因为,虽然m〔*〕,m〔*〕,…m
132t1
〔*〕中已经去掉了一些一样的极小多项式,但是不一定去掉了所有
的与m〔*〕一样的极小多项式,
1

1
.
由g〔*〕=LCM〔m〔*〕,m〔*〕,…m〔*〕〕可以知道,以
132t1
、2、、、2t为根的BCH码的码长n=LCM(e,e,….e)。假设的
122t1
阶为e,则i的阶是e的因子,因此码长公式可以简化为n=LCM(e,
111
e,…,e)=e.
32t11
设是GF〔2m〕的本原元,=l,则的阶
2m1
e=
1(l,2m1)
即以、2、、、2t为根的BCH码的码长为
n=2m1
(l,2m1)


BCH码是循环码的一种,满足循环码的编码方法,令给定的编码方
式为〔n,k〕生成多项式为g〔*〕,信息码多项式为m〔*〕编码的
步骤如下:1、用*〔n-k〕乘以m〔*〕,这一运算相当于是把信息位
码后附加上〔n-k〕个“0”.〔*〕除*〔n-k〕m〔*〕,得到商
Q〔*〕和余式r〔*〕,即*〔n-k〕m〔*〕/g〔*〕=Q〔*〕+r〔*〕
/g〔*〕。〔*〕=*〔n-k〕m〔*〕+r〔*〕。

BCH码的译码方法可以有时域译码和频域译码两类。频移译码
是把每个码组看成一个数字信号,把承受到的信号进展离散傅氏变换
(DFT),然后利用数字信号处理技术在“频域〞译码,最后进展傅氏
反变换得到译码后的码组。时域译码则是在时域直接利用码的代数构
造进展译码。BCH的时域译码方法有很多,而且纠多个错误的BCH
码译码算法十分复杂。常见的时域BCH译码方法有彼得森译码、迭
代译码等。事实上,BCH码是一种特殊的循环码,因此它的编码器
1
.
不但可以象其它循环码那样用除法器来实现,而且原则上所有适合循
环码译码的方法也可以用于BCH码的译码。BCH译码的一般原理
将求解错误位置转化为解线性方程组的问题,但是当设计纠错能力t
比较大时,要不断对系数矩阵进展降阶处理,直到求到一个满秩的
e*e阶方阵为止,还是比较复杂的运算,Berlekamp的发现从根本
上解决了BCH码译码的算法复杂度,得到了广泛的应用。


先用Simulink建立BFSK+信道编码〔取BCH码〕在加性高
斯白噪声信道下的仿真模型,设置好每个模块的参数,编写好主程序
实现BFSK的输入,在程运序行过程中间调用BFSK仿真模型,将
不同纠错能力的误码率曲线在一个仿真结果图里展现;分析随着信噪
比的增加,误码率曲线的走势,在不同的纠错能力t下,分析〔〕
〔〕的误比特率随信噪比的走势,记录仿真所用的不同的时间,
用时间作为译码复杂度的参数。根据仿真结果分析不同的纠错能力对
编码性能的影响,不同的纠错能力对译码复杂度的影响。

通过调用已建立的BFSK+信道编码〔取BCH码〕在加性高斯
白噪声信道〔有突发干扰〕下的仿真模型,利用Matlab编程分析
BFSK在加性高斯白噪声信道的误码率性能;分析不同纠错能力对误
码率性能的影响和不同的纠错能力对译码复杂度的影响,根据仿真图
的结果得出进展分析得出结论。

clearall;
clc;
1
.
SNR=::10;
Errorrate=zeros(1,100);
Errorrate_1=zeros(1,100);
fori=1:100
simBCH;
Errorrate(i)=ErrorVec(1);
Errorrate_1(i)=ErrorVec_1(1);
end
semilogy(SNR,Errorrate,'r');grid;
*label('SNR');
ylabel('Errorrate');
holdon;
semilogy(SNR,Errorrate_1,'b');
(4)Simulink框图及参数设置
①BCH信道编码仿真模型

通过理论与编程实践,我完成了这次设计的任务,其运行结果如下列
图:
〔〕曲线颜色仿真所用时仿真次数译码复杂
间度正影响
大小
〔〕红色11min10000小
〔〕绿色5min10000大
实验结果分析
1
.


一样的信噪比参数下,其误比特率有明显的下降,编码性能得到
改善。
,当增大到一定值的时候,
误比特率趋向于零。
,编码后的误码性能没有未编码
的无码性能好,也就是在信噪比比较低的情况下,未编码和经过编
码后的误比特率曲线会有交点。
5.〔〕的误比特率低于〔〕,说明〔〕的编码性能好。
:
这次通过对BCH编码解码课设,学会了BCH码的原理。而且通过
此次实验更是加深了MATLAB在通信领域的应用,及通过matlab
对信号仿真的重要性,并且提高自己的动手能力和编程能力。在此过
程中,感教师的指导和同学们的帮助,使我能够顺利完实验。成
:
[1]樊昌信,,2021
[2]*明远,.
电子科技,2021
1

利用Matlab进行BCH编码、译码仿真 来自淘豆网www.taodocs.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数7
  • 收藏数0 收藏
  • 顶次数0
  • 上传人haha
  • 文件大小393 KB
  • 时间2023-03-18