实验五 汉明码的编译码

实验五 汉明码的编译码

ID:47197514

大小:194.50 KB

页数:11页

时间:2019-08-22

实验五 汉明码的编译码_第1页
实验五 汉明码的编译码_第2页
实验五 汉明码的编译码_第3页
实验五 汉明码的编译码_第4页
实验五 汉明码的编译码_第5页
资源描述:

《实验五 汉明码的编译码》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、《数据通信原理》实验报告实验题目:汉明码的编译码专业班级:信息工程2班姓名学号:赵星敏201342351李明阳201342300指导教师:刘钰实验五汉明码的编译码一、实验目的1、理解汉明码的编码原理2、掌握利用simulink进行汉明码编译码仿真的方法3、掌握利用matlab指令进行汉明码编译码的方法二、实验原理在数字通信系统中,为了实现信息的可靠传输,需要采用差错控制来发现并纠正错误。进行差错控制的方法就是对信息进行差错控制编码,差错控制编码种类较多,其中线性分组码是常用的一类编码,具有编码效率高,实

2、现较简单以及检纠错能力较强等特点。一般数字通信系统模型由信源信宿、加解密、编解码、调制解调等模块组成,其中有些通信模块是组成整个通信系统所必不可少的,有些模块是可以不需要的。差错控制编解码属于编解码器通信模块,为了方便分析差错控制编码性能,通过将通信系统简化为如图5-1所示的信息传输系统来搭建仿真实验平台进行分析研究。信源差错控制编码器差错控制解码器信宿信道图5-1编码,有时也称为纠错编码。不同的编码方法,有不同的检错或纠错能力,有的编码只能检错,不能纠错。一般说来,付出的代价越大,检纠错的能力就越强。

3、在选择差错控制编码时需要考虑到编码效率、检纠错的能力等方面因素的影响。按照是否将信息码元进行分组可以将差错控制编码分为分组码和非分组码,线性码是指信息位和监督位满足一组线性方程的码,任一(n,k)线性分组码的编码效率为k/n。Simulink通信模块中提供了二进制线性分组码编解码器:BinaryLinearEncoder和BinaryLinearDecoder。汉明码是汉明(Hamming)于1950年提出的能纠正一位错码且编码效率较高的线性分组码,它可以用一种简洁有效的方法进行解码。汉明码不是仅指某一

4、种码,而是指一类码。二进制汉明码应满足条件:2n-k=1+n,令m=n-k,汉明码n和k服从关系式:码长n=2m-1;信息位k=2m-1-m;最小距离dmin=3(指汉明距离)。当m=3,4,5,6,7,8,…时,分别有(7,4),(15,11),(31,26),(63,57),(127,120),(255,247),…汉明码。汉明码的基本思想:在k个信息位上加r个校验位,构成n=k+r位的码字,其中每个校验位和某几个特定的信息位构成偶校验的关系。接收端对这r个偶关系进行校验,即将每个校验位与它关联的信

5、息位进行异或加,相异或的结果称为校正因子。如果没有错的话,这r个校正因子都为0;如果有一个错则校正因子不会全为0,根据校正因子的不同取值,可以知道错误发生在码字的哪一个位置上。线性分组码的生成原理与Hamming码基本一致,下面以(7,4)Hamming码为例简单地介绍一下汉明码的构造过程。构造一个(7,4)汉明码,就是求出它的生成矩阵,或等效地,求出它的监督矩阵(也叫校验矩阵)。由于(7,4)汉明码的校验矩阵是矩阵,而监督矩阵的列矢量不能为全零(零与任何码元的乘积为零,失去检验功能),因此监督矩阵H的

6、7个列矢量正好是除全零矢量外3重矢量的全部可能组合。将[001]T、[010]T、[011]T、[100]T、[101]T、[110]T、[111]T排列起来就是监督矩阵,排列顺序不同,所得矩阵也就不同,说明H不是唯一的。由于交换列不会影响最小距离,所以可以通过列置换将最初的H变换为系统形式的H(若信息组以不变的形式,在码字的任意k位中出现,则称该码为系统码。否则,称为非系统码),成为系统汉明码:经过变换,整理为典型监督矩阵形式为根据校验矩阵与生成矩阵的转换关系式得到系统汉明码的生成矩阵G为:这样输入信

7、息组m=[m3,m2,m1,m0],将m与G相乘即得到编码后的码字A。当数字信号编码成汉明码形式后在信道中传输,由于信道中噪声的干扰,可能由于干扰引入差错,使得接收端收到错码,因此在接收端进行汉明码纠错,以提高通信系统的抗干扰能力及可靠性。解码的时候将接收到的信息组r与HT相乘,如果rHT=0,接收码组无错;如果rHT≠0,则根据译码图样进行纠错。Simulink通信模块中提供了Hamming码编解码器:HammingEncoder和HammingDecoder。三、实验内容1、simulink仿真汉明

8、码编译码过程汉明码编译码仿真的模型图如图5-2所示。图5-2汉明码编译码仿真各模块参数及说明:①BernoulliBinaryGenerator(伯努利二进制随机数产生器)模块描述:产生服从伯努利分布的随机二进制序列,模块的输出可以是帧结构的矩阵,也可以是数据流形式的行或列向量或一维数组。模块位置:CommunicationsBlockset-CommSources-RandomDataSources-BernoulliBinaryGene

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

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

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