ImageVerifierCode 换一换
格式:DOCX , 页数:8 ,大小:70.38KB ,
资源ID:5992071      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/5992071.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(完整word版74汉明码信道编码共10页.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

完整word版74汉明码信道编码共10页.docx

1、完整word版74汉明码信道编码共10页 (7,4)汉明码信道编码1.课程设计目的(1)通过利用matlab simulink,熟悉matlab simulink仿真工具。(2)通过课程设计来更好的掌握课本相关知识,熟悉汉明码的纠错与检错方法。(3)更好的了解通信原理的相关知识,磨练自己分析问题、查阅资料、巩固知识、创新等各方面能力。2.课程设计要求(1)掌握课程设计的相关知识、概念清晰。(2)程序设计合理、能够正确运行。3.相关知识3.1汉明码的概念 汉明码是1950年由Hamming首先构造的,它是一种能够自动检测并纠正一重错的线性纠错码,即SEC(Single Error Correct

2、ing)码,它不仅性能好,而且编译码电路非常简单,易于实现。从20世纪50年代问世以来,在提高系统可靠性方面获得了广泛的应用。最先用于磁芯存储器,60年代初用于大型计算机,70年代在MOS存储器中得到应用,后来在中小型计算机中普遍采用,目前常用于RFID系统中多位错误的纠正。3.2 汉明码的校验与其他的错误校验码类似,汉明码也利用了奇偶校验位的概念,通过在数据位后面增加一些比特,可以验证数据的有效性。利用一个以上的校验位,汉明码不仅可以验证数据是否有效,还能在数据出错的情况下指明错误位置。3.2 汉明码的纠错在接受端通过纠错译码自动纠正传输中的差错来实现码纠错功能,称为前向纠错FEC。在数据链

3、路中存在大量噪音时,FEC可以增加数据吞吐量。通过在传输码列中加入冗余位(也称纠错位)可以实现前向纠错。但这种方法比简单重传协议的成本要高。汉明码利用奇偶块机制降低了前向纠错的成本。在接受端通过纠错译码自动纠正传输中的差错来实现码纠错功能,称为前向纠错FEC。在数据链路中存在大量噪音时,FEC可以增加数据吞吐量。通过在传输码列中加入冗余位(也称纠错位)可以实现前向纠错。但这种方法比简单重传协议的成本要高。汉明码利用奇偶块机制降低了前向纠错的成本。3.3 汉明码的编码方法 设原代码的码长为 k比特,附加纠错编码部分为r比特,当码字长度n = 2 r -1,r=n-k,r = 1 ,2 时就称这种

4、线性分组码为汉明码。其基本原理是,将信息码元与监督码元通过线性方程式联系起来,每一个监督位被编在传输码字的特定比特位置上。系统对于错误的数位无论是原有信息位中的,还是附加监督位中的都能把它分离出来 。 信息传输中信道中的噪声干扰不仅使原代码的每一位(k比特)可能出错,而且附加纠错位(比特)也可能出错,故“一个差错”的情况共有k+r种,加上“ 正常” 态共有k+r +1种状态,而 r比特的附加纠错位要能分辨这k+r +1种状态。推导并使用长度为k位码字的汉明码,所需步骤如下 : (1)确定最小的监督位数r,将它们记成 D 1,D2 ,Dr ,每个监督位符合不同的奇偶测试规定; (2)原有信息和r

5、 个监督位一起编成长为r+k位的新码字,选择 r 监督位(0或1) 以满足必要的奇偶条件; (3)对所接收的信息作所需的r个奇偶检查; (4)如果所有的奇偶检查结果均为正确的,则认为信息无错误;如果发现有一个或多个错了,则错误的位由这些检查的结果来唯一地确定。汉明码是一种能纠一位错的线性分组码,由于它的编译码简单,在数据通信和计算机存储系统中广泛应用, 如在蓝牙技术和硬盘阵列中。它的最小码距为,可以纠正一位错误,但对于两位错不能检测, 还可能会造成误纠。尽管发生一位错的概率相对最高,但在一些要求较高的应用中汉明码不能满足要求。常用的能检测两位错同时能纠正一位错的纠错码有扩展汉明码和最佳奇权码的

6、最小码距都为4 , 两者有相似之处,比如冗余度一样,对于数据位数k,校验位数r应满足2r-1k+r当k=16时,r=6,数据位长增加一倍,校验位数只需增加一位,编码效率较高。3.5 奇偶校验位 奇偶校验是一种添加一个奇偶位用来指示之前的数据中包含有奇数还是偶数个1的检验方式。如果在传输的过程中,有奇数个位发生了改变,那么这个错误将被检测出来(注意奇偶位本身也可能改变)。一般来说,如果数据中包含有奇数个1的话,则将奇偶位设定为1;反之,如果数据中有偶数个1的话,则将奇偶位设定为0。换句话说,原始数据和奇偶位组成的新数据中,将总共包含偶数个1。奇偶校验并不十分健壮,如果数据中有偶数个位发生变化,则

7、奇偶位仍将是正确的,因此不能检测出错误。而且,即使奇偶校验检测出了错误,他也不可以指出哪一位出现了错误,从而进行更正。数据必须整体丢弃并且重新传输。在一个噪音较大的媒介中,成功传输数据可能需要很长时间或者不可能完成。虽然奇偶校验的效果不佳,但是由于他只需要一位额外的空间开销,因此这是开销最小的检测方式。并且,如果知道了发生错误的位,奇偶校验还可以恢复数据。4.课程设计分析4.1 (7,4)汉明码信道编码的基本概念线性分组码是一类重要的纠错码,应用很广泛。在(n,k)分组码中,若督元是按线性关系相加而得到的,则称其为线性分组码。现在以(7,4)分组码为例来说明线性分组码的特点。设其码字为A=a6

8、,a5,a4,a3,a2,a1,a0,其中前4位是信息元,后3位是监督元,可用下列线性方程组来描述该分组码,产生监督元: a2 = a6 + a5 + a4 a1 = a6 + a5 + a3 (4.1.1) a0 = a6 + a4 + a3显然,这3个方程是线性无关的。经计算可得(7,4)码的全部码字,如表2-1所示。表2-1 (7,4)码的全部码字序号码 字序号码 字信 息码元监 督 元信 息码元监 督 元0 0 0 0 0 0 0 081 0 0 0 1 1 11 0 0 0 1 0 1 19 1 0 0 1 1 0 02 0 0 1 0 1 0 110 1 0 1 0 0 1 03

9、0 0 1 1 1 1 011 1 0 1 1 0 0 14 0 1 0 0 1 1 012 1 1 0 0 0 0 15 0 1 0 1 1 0 113 1 1 0 1 0 1 06 0 1 1 0 0 1 114 1 1 1 0 1 0 07 0 1 1 1 0 0 015 1 1 1 1 1 1 1不难看出,上述(7,4)码的最小码距d0=3,它能纠1个错或检2个错。汉明码是能够纠正单个错误的线性分组码,其特点是:最小码距d0=3,码长n与监督位满足n=2r-1的关系,上述的(7,4)线性分组码就是一个汉明码。4.2监督矩阵H式(4.1.1)所示(7,4)汉明码的3个监督方程改写后可用矩

10、阵形式表示为 a5 1 1 1 0 1 0 0 a4 0 1 1 0 1 0 1 0 a3 = 0 (4.2.1) 1 0 1 1 0 0 1 a2 0 a1 a0并简记为 H=或 A=0 (4.2.2)H称为监督矩阵,一旦H给定,信息位和监督位之间的关系也就确定了。H矩阵可以分成2部分 1 1 1 0 1 0 0 H = 1 1 0 1 0 1 0 =P Ir (4.2.3) 1 0 1 1 0 0 1 H=,可以用来作为判断接收码字A是否出错的依据。4.3生成矩阵G把监督方程补充完整并改写为矩阵形式a6 1 0 0 0a5 0 1 0 0a4 0 0 1 0 a6a3 = 0 0 0 1

11、a5 (4.3.1)a2 1 1 1 0 a4a1 1 1 0 1 a3a0 1 0 1 1 A = a6 a5 a4 a3 G (4.3.2)其中 1 0 0 0 1 1 1 0 1 0 0 1 1 0 G = 0 0 1 0 1 0 1 (4.3.3) 0 0 0 1 0 1 1G称为生成矩阵,由G和信息组就可以产生全部码字。生成矩阵也可以分成2部分,即 G = Ik Q (4.3.4)其中 1 1 1 Q = 1 1 0 = (4.3.5) 1 0 1 0 1 14.4校正子S设发送码组A= an1,an2,a1,a0 ,在传输过程中可能发生误码。接收码组B= bn1,bn2,b1,b0

12、 ,收发码组之差定义为错误图样E,即 E = B - A (4.4.1)令S = BHT,称为伴随式或校正子。 S = =(A + E) = E (4.4.2)上述(7,4)汉明码的伴随式与错误图样的对应关系如表2-2所示。 表2-2(7,4)汉明码S与E的对应关系序号错误码位ESe6 e5 e4 e3 e2 e1 e0s2 s1 s00/0 0 0 0 0 0 00 0 01b00 0 0 0 0 0 10 0 12b10 0 0 0 0 1 00 1 03b20 0 0 0 1 0 01 0 04b30 0 0 1 0 0 00 1 15b40 0 1 0 0 0 01 0 16b50 1

13、 0 0 0 0 01 1 07b61 0 0 0 0 0 01 1 1 5.仿真MATLAB进行汉明码信道编码的编程:clc;initialseed=71; %AWGN信道的随机种子inputinitialseed=63; %伯努利二进制生成器的随机种子inputsampletime=1/1000; %伯努利二进制生成器的样本时间y=;y1=;for snr=1:10; %SNR取1到10dB,得到不同SNR下的误码率曲线。sim(hammingencoding); %打开simulink模块y=y,mean(simout(:,1); %y代表经过汉明译码后的误码情况,计算的是其误码的平均值

14、y1=y1,mean(simout1(:,1); % y1代表译码前的误码情况,计算的是误码的平均值end snr=1:10;semilogy(snr,y,snr,y1) %绘制误码率曲线,可以看出经过译码后的BER的增益。 xlabel(SNR(dB)ylabel(BER)title(经(7,4)汉明码信道编码后的误码率改善)代码模块化:通过MATLAB软件进行编译,运行结果如图:6.结果分析由实验结果可以看出:经(7,4)汉明码信道编码后的误码率改善。从而可以发现随着信噪比的增加误码率有明显下降的趋势虽然汉明码在课堂上老师讲过但是对它的理论知识还是不深,但是通过这次试验加深了我对汉明码的理论和认识和理解,也是我懂得如何对一个理论进行自己的研究或验证。7.参考文献1 徐明远 邵玉斌 编著 MATLAB仿真在通信与电子工程中的应用 西安电子科技大学出版社, 20052 王兴亮 编著 数字通信原理与技术 西安电子科技大学出版社 第二版 3 孙屹 吴磊编著 Simulink通信仿真开发手册 国防工业出版社 2003

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1