基于Matlab的循环码编译码仿真

 2022-01-17 11:01

论文总字数:19322字

目 录

第一章 绪论 1

第二章 课题介绍 3

2.1 纠错码 3

2.2 循环码 3

2.3 matlab的介绍 3

2.4 SIMULINK仿真的介绍 4

2.5 循环码的发展前景 4

第三章 循环码的设计原理 6

3.1 循环码的循环性 6

3.2 循环码多项式表示 6

3.3 循环码的生成多项式 7

3.4 循环码的生成矩阵和一致校验矩阵 8

3.5 循环码检错与纠错能力 9

第四章 循环码编码和译码原理 10

4.1 循环码的编码原理 10

4.2 循环码的译码原理 10

第五章 实现程序和仿真结果分析 14

5.1 循环码基于MATLAB的编译码 14

5.2 SIMULINK仿真 16

5.2.1 各模块参数设置 17

5.2.2 仿真波形 18

5.3 仿真分析 22

第六章 总结 24

参考文献 25

致谢 26

附录 27

基于MATLAB循环码编译码仿真

钱熠凡

,China

Abstract: The linear cyclic code generator was designed by the MATLAB software based on coding theory of the linear cyclic code.The generator accomplished outputs the cyclic code encoding results and wave forms through the MATLAB software,and realized the encoding visualization of cyclic code generator.Based on analyzing the theory of the encoding and decoding of cyclic code,this paper showed the schemes of encoding and decoding of (7,4) cyclic code by the software and based on MATLAB.The simulation results showed it's ability to review and error correction.Coding and decoding equipment is not complicated and there performance is better. They not only can correct random errors ,but also can be easy to implement Cyclic code , it is easy to use feedback shift registers with the hardware. Cyclic code has many special algebraic properties, these properties contribute to the error correction ability of the system .

Keywords : MATLAB;Linear cyclic code;Generator ; Encoding; Simulink.

第一章  绪论

在古代,智慧的人们就已经学会信息与信息的传递,但是,还是在有线、无线电通信被创造出来以后,信息才被人们大量的运用。直到在20世纪初信息论开始进入朦胧启蒙时期,人们才开始提出一些关于信息论的基本问题。 

随着越来越多的人接触到有线和无线电通信,编码技术也随之出现,莫尔斯码和波多码等也就应运而生,它们被人们发明出来,使用点、划、空的信号来表达文字等信息,虽然这些信号都比较原始,但是它们实现了从文字到通信信号的转变。

1946年,美国著名的数学家香农首先提出并建立了信息的度量方式,并发表了论文《通信的数学理论》。与此同时,人们逐步产生纠错与检错码的概念。人们发现,这些由点、划、空等信号所构成的码的纠错能力实际上是一种抗干扰能力,他们通过某种方式可以形成一定的结构,由这些结构来产生抗干扰能力, 目前,实际应用中几乎所有的纠错码都是线性的,所以,线性分组码在通信系统中得到了越来越广泛的应用。

而作为线性分组码的一个重要分组的循环码,循环码具有完整的代数结构,对其按照系统所要求的纠错能力来构造需要的编码,并且简化译码方法有很大的帮助。而且通过线性移位寄存器可以很容易地实现编码与译码,且性能较好地对随机错误和突发错误进行纠正。

一般情况下,数字信号在接收端会发出错误判断是由于在传输过程中,受到干扰的影响,码元波形遭到破坏产生的。此时可以采用均衡的方法对乘性干扰进行纠正。而对于受到的加性干扰的影响,我们则需要采取不同的解决方法。在数字通信系统的设计过程中,合理选择调制制度是首要的,慎重考虑发送功率和解调方法等方面,为了保证加性干扰不足以达到影响误码率要求,差错控制措施是一个值得考虑采用的好方法。 

在通信软件中,我们通过差错控制码进行数据差错控制。差错控制码即纠错码,循环码是纠错码的一种编码方式,采用不同的编码方式,会有不同的检错和纠错能力。而循环码具有较高的检错率,能够及时地对随机或突发错误做出检错。 

在严密的数学理论基础上的,我们对循环码进行编码和解码,其所需要的方法和设备都较为简单,而且具有不错的纠错的能力。在循环码中,循环码不仅拥有一般线性码所具有的性质,将循环码的任意一组码进行循环一位以后,这组码还是该循环码中的一个码组,所以,循环码还具有循环性。

我们的世界日新月异,快速发展的社会和迅速进步的科技每天都影响着我们的日常生活,而计算机产业也在这样的大环境下蓬勃而迅速地发展着。计算机的发展也在大大推动着通信技术的发展,目前我们人类的经济文化水平相较以前有了巨大的提升,我们对生活中所需要的物质需求包括我们的手机,电脑等电子产品要求也越来越苛刻,所以这些产品也在不

断大量的更替中。

计算机通信码是通信技术的一个重要分支,相较于其他的通信技术,由于研究时间长,计算机通信码显得更加成熟,它的代数性质有很多的特殊性,所以当计算机通信出现的时候,我们的现代通信技术突然间有了很大的质的进步,这正是由于两台计算机之间的信息传递更加的精确和迅速。它是我们现代社会以及现代的计算机文明快速发展的见证,目前,它的应用非常的广泛,除了我们正常的通信系统还包括控制系统等等。

第二章 课题介绍

2.1 纠错码

纠错码(error correcting code),能够自行发现或纠正在传输过程中收端发生的错误码。检错码是指只用来发现错误的码。我们通过对原码字增加多余的码元,扩大码字之间的差别来使一种码具有检错或纠错能力,即使用某种方法将原来的码字变成一个另外类型的码字,并且每个码字的码字之间有相互的联系,这就是我们所说的编码关系的建立。当接收端接收到码字后,我们判断他有无错误时可以看它是否满足我们所说的编码的规则。假使不能满足,在我们进行纠错的时候,可以根据所说的规则来确定发生错误的位置。这个纠正并恢复这个错误的过程就叫做译码。信息传输有两个方面,分别是信源编码和纠错码。他们之间的联系称之为对偶。我们处理自然信息的时候可以使用信道来解码,若要达到压缩的目的,可以删除其剩余度。我们对原有码增加码元是为了使该码具备检查错误或纠正错误的功能。发生错误时我们要增加一定数量的符号的码字。具体来说,就是将原来的代码变换成另一种码,并且按照一定的规则来改,且这两种码之间有很大的联系,这就叫做编码。通常,当我们所运用的编码规则用作检验的时候,码字必须到达接收端。我们根据它有无错误来判断其是否符合原规则。这可以根据是否对编码规则是否满意来确定是否有没有错误。当不能符合时,我们要正确判断它的错误,并找到错误所在的位置以方便我们纠错。解码即恢复原代码步骤;码之间的关系是线性的,否则称为非线性的关系。

2.2 循环码

线性码有很多分支,循环码就是其中一种,所以,它具备循环性和其他线性码的主要特点。循环码编码和解码需要的设备都比较简单,并且拥有不错的纠正错误的能力。循环码对于不管是随机的还是突发的错误都能及时地检测出来。它可以检测循环码任何长度的突发错误或更短,包括端到端的突发错误。循环码是无权码,循环码安排在卡诺图的特征线的相邻数字之间,只有一个相邻的不同的数字符号构成的数字单位。符合各种程序的特点,但只有循环码表种类。在数字转换过程中,码字的速度会不断地变化,并且会产生一些其他的数字形式,它们被称为瞬态误差,而循环码的优点是没有瞬态误差。在一些数字系统这是不允许的,并希望这只是一个码之间的相邻的不同的数字元素。相邻的条件满足,所以不会产生瞬时误差。循环码是一种代码,可以在卡诺图中得到循环。也被称为循环码格雷码(Gray Code)。

2.3 matlab的介绍

MATLAB是一款用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink两大部分。它的功能有很多,在我们的日常生活中可以发挥很大的作用,比如说数据的分析和通过其中的画图软件达到科学数据的具体化和形象化,再比如说建立动态系统的模型并对其仿真,使其存在在一个我们便于理解和运用的环境里,这种全面的问题的解决方法为我们研究科学,计算数据,设计工程提供了很大

的帮助,在这之前,传统运用的计算机设计语言,并没有如此强大的功能,MATLAB走在目前国际软件技术的最前端。MATLAB具有强大的处理数据的功能,它本身自带很多的计算算法,对于不同用户实现他们各自的需求,其都可以通过它强大的能力来很好地解决,其所运用的算法相较于传统的算法都是及其先进的,并且算法的处理错误的能力大大提高了。其函数种类由简单到复杂可以分为很多种,小到最简单的比如特征向量,大到复杂的比如傅里叶变换,MATLAB都能够很好地解决。大体上来说,它的优势可以分为以下几类:(1)之前的运算总是显得冗长而繁琐,而MATLAB可以将运算变得简洁和高效化;(2)能更直观地处理图像信息,使其更利于理解;(3)简洁化的处理界面是使我们更容易掌握和理解其中的编译语言和软件;(4)MATLAB所具有的特有的工具功能提供给力我们更多样化的处理方式。

2.4 SIMULINK仿真的介绍

剩余内容已隐藏,请支付后下载全文,论文总字数:19322字

相关图片展示:

您需要先支付 80元 才能查看全部内容!立即支付

该课题毕业论文、开题报告、外文翻译、程序设计、图纸设计等资料可联系客服协助查找;