版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、兰州理工大学课程设计报告课程名称: 通信系统课程设计 设计名称:汉明码的编码和译码姓 名:学 号 :班 级:指导教师:起止日期: 2014.4.7-2014.4.9课程设计任务书学生班级:学生姓名: 学号:设计名称:汉明码的编译和译码起止日期:2012.6.11-2012.6.25 指导教师:设计要求:用 matlab 实现 (7,4)汉明码。 编码电路 :54364错码指示课程设计学生日志时间设计内容2012.6.11查阅资料,确定方案2012.6.12设计总体方案2012.6.16设计详细步骤2012.6.23完成课程设计报告2012.6.25答辩课程设计评语表指导教师评语:成绩:指导教师
2、:年月日汉明码的编码和译码一、设计目的和意义1. 学习汉明码的编码和译码;2. 学习 Matlab 的相关使用,学会用 Malab 解决实际问题;3. 培养自己全面、独立思考的能力。二、设计原理2.1 汉明码编码原理一般来说,若汉明码长为 n,信息位数为 k,则监督位数 r=n-k 。若希望用 r 个监督 位构造出 r 个监督关系式来指示一位错码的 n 种可能位置,则要求2r 1 n 或 2r 1 k r 1 (1)下面以( 7,4)汉明码为例说明原理:设汉明码( n,k )中 k=4,为了纠正一位错码,由式( 1)可知,要求监督位数 r3。 若取 r=3, 则 n=k+r=7。我们用 a6a
3、5a4a3a2a1a0来表示这 7 个码元,用 s1s2 s3的值表示 3 个 监督关系式中的校正子, 则 s1s2s3的值与错误码元位置的对应关系可以规定如表 1 所列。表1 校正子和错码位置的关系s1s2s3错码位置s1s2 s3错码位置001a0101a4010a1110a5100a2111a6011a3000无错码则由表 1 可得监督关系式:s1a6a5a4a22s2a6a5a3a3s3 a6 a4 a3 a04在发送端编码时,信息位 a6a5a4a3 的值决定于输入信号,因此它们是随机的。监督 位a2、a1、a0应根据信息位的取值按监督关系来确定 ,即监督位应使式 (2)式(4)中s
4、1、s2 、 s3 的值为 0(表示编成的码组中应无错码)a6a5a4a20a6a5a3a10a6a4a3a00式(5)经过移项运算,接触监督位a2a6a5a4a1a6a5a3a0a6a4a3(5)(6)a6110101011100100000a4a3a2a1(7)式( 6)还可以简记为H AT 0T 或 A H T 0(8)1110H110110111110P11011011所以有H PI r其中式(6)等价于1000100 0 1 A100I r 0 1 0001a5 a4 a3 a2 a1 a0 0 0 0 0(9)111a2 a1 a0 a6 a5a41001a6a4 a3 Q11(1
5、 0 )式(5)其等价形式为:其中 Q为 P的转置,即Q PT我们将 Q的左边加上一个k k 阶单位方阵,就构成一个矩阵(11)式( 10)表示 ,信息位给定后,用信息位的行矩阵乘矩阵 Q就产生出监督位。1110011100011 0 0 10101(12)(13)0010G称为生成矩阵,因为由它可以产生整个码组,即有a6a5a4a3a2a1a0 a6a5a4a3 G或者A a6 a5 a4 a3 G (14)式 (13) 即汉明码的编码原理22 汉明码纠错原理当数字信号编码成汉明码形式(本文中即 A )后在信道中传输,由于信道中噪声的 干扰,可能由于干扰引入差错,使得接收端收到错码,因此在接
6、收端进行汉明码纠错, 以提高通信系统的抗干扰能力及可靠性。一般来说接收码组与 A 不一定相同。若设接收码组为一 n 列的行矩阵 B,即B b6b5b4b3b2b1b0(15)则发送码组和接收码组之差为B A E (16)E就是传输中产生的错码行矩阵E e6e5e4e3e2e1e0(17)若 ei=0,表示接收码元无错误,若 ei =1,则表示该接收码元有错。式( 16)可改写 成B A E (18)若 E=0,即接收码组无错 , 则 B A E A ,将它代人式( 8),该是仍成立,即有 B H T 0 (19)当接收码组有错时, E 0,将 B 带入式( 8)后,该式不一定成立。在未超过检错
7、能力时,式( 19)不成立。假设此时式( 19)的右端为 S, 即B H T S 20将 B A E代入式( 20),可得S (A E)H T A HT E HT由式( 8)可知,所以S E H T21此处 S与前面的 s1s2s3 有着一一对应关系,则 S 能代表错码位置。 因此,纠错原理即,接收端收到码组后按式( 20)计算出 S,再根据表 1 判断错码情 况,进行差错纠正。三、详细设计步骤3.1 程序3.1.1 程序函数介绍MATLAB 中提供了汉明码的编码和译码函数,本程序直接调用进行编程。 encode函数 功能:编码函数 语法: code=encode(msg,N,K) 说明:该函
8、数对二进制信息 msg进行汉明编码, K 为信息位长度, N为码字长度。 msg是 一个K列矩阵。 decode函数 功能:译码函数 语法: rcvcode=decode(code,N,K) 说明:该函数对接受码字进行译码,恢复出原始信息,译码参数及方式必须和编码时采 用的完全相同。 hammgen函数 功能:汉明码生成矩阵和校验矩阵产生函数 语法: H=hammgen(M)H,G=hammgen(M)H,G,N,K=hammgen(M)说明:该函数的功能是产生生成矩阵和校验矩阵,其中 M=N-K 为校验位的长度, H为汉 明码的校验矩阵, G为汉明码的生成矩阵。3.1.2 主程序K=4;N=
9、7;%信息产生%汉明编码%加噪声%汉明译码msg=randint(200,4,2) code=encode(msg,N,K) code_noise=rem(code+rand(200,7)0.95,2 ) rcv=decode(code_noise,N,K) disp(Error rate in the received code: num2str(symerr(code,code_noise)/length(code) disp(Error rate after decode: num2str(symerr(msg,rcv)/length(msg)%计算误码率3.2 SIMULINK 仿真本
10、系统由信号产生模块、信号汉明编码模块、 AWGN 信道、信号汉明译码模块、误 码率计算模块组成,在图形观察模块还包括频谱仪和示波器。3.2.1 SIMULINK 电路图在设计中,本系统信号产生模块选用伯努利二进制序列产生器( Bernoulli Binary Generator)来输出速率为 100Bd的随机数字信号,进入 Hamming encoder进行编码,在送 入AWGN信道(加入高斯白噪声)传输,接收信号送入 Hamming decoder进行差错纠正, 其后加一误码率计算模块( Error Rate Calculation)计算误码率。再用示波器 scope观察 波形,用 spec
11、trum scope观测频谱。电路如图 1所示。图1 SIMULINK 仿真电路图由于要绘制 Hammingd ecoder 模块输入信噪比与输出误码率的关系曲线图,所以将SNR设置成一个变量,通过 ratio 文件编程绘制误码率曲线图。3.2.2 ratio文件程序x=0:20%定义信噪比的范围y=x;%输入信噪比%运行 fangzhen SIMULINK 仿真文件 %误码率for i=1:length(x) xSNR=x(i); sim(fangzhen); y(i)=xErrorRate(1);end semilogy(x,y); grid on; xlabel(高斯信道中的信噪比 /d
12、B); ylabel(误码率 );四、设计结果及分析4.1 调试结果4.2 仿真波形图 2 Bernoulli Binary Generator输出信号波形图 3 Bernoulli Binary Generator输出信号频谱图 5 Hamming Encoder 输出信号频谱Magnitudesqoared, dB心cncoos30 405Fame 4FBqun)ncy (Hz)7 AWGNChanne 一鸯圧a4酋谯图 8 Hamming decoder 输出信号图 9 Hamming decoder 输出信号频谱图 10 SNR=10dB的误码率图11 输入信噪比与输出误码率的关系曲线
13、图4.3 仿真结果分析通过结果可知,汉明码可以降低误码率,提高系统抗干扰能力。在SIMULINK仿真AWGN中,利用 ratio 文件编程绘制误码率函数曲线近似于一条直线,但是若直接控制 参数模块的 SNR,误码率发生变化,比较奇怪,不明白。五、 体会这次通信原理课程设计的题目是汉明码的编码、译码。因为之前并没有接触过 MATLAB 中的 SIMULINK ,所以在画原理图和设置参数的时候遇到了不少困难。但好 在网上可借鉴的资源很多,通过学习相关的教程和查阅 MATLAB 中的 help,这些困难 都迎刃而解了。这其中我深刻地体会到专业英语的重要性。可想而知,多积累点英语对 今后的工作、学习将有极大的帮助。通过本次学习,我再一次体会到 MATLAB 的强大。 丰富的库函数、强大的数据处理能力,出色的绘图功能,友好的工作平台,简单一用的 操作语言等等,这些优点都促使 MATLAB 成为数学处理软件发展史上的巅峰之作。这 激发了我之后学习 MATLAB 的决心。知识的构架是千枝交错的。学到大学,知识之间 相互渗透的现象可谓比比皆是,这启发我们不仅要发散思维的领域,也要拓宽知识的领 域。对与本专业相关的领域多加了解百利而无一害。最后,还是那句话,实践出真
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年环保行业环保产业发展智能化技术应用研究报告及未来发展趋势预测
- 2025年地铁人工智能安全规范岗前考核试卷
- 2025年农村集体产权制度改革政策适应性评估考核试卷
- 2025年房地产行业关联方资金往来合规考核试卷
- 2025年公共管理行业数字政府建设与政府服务升级研究报告及未来发展趋势预测
- 2025甘肃天水天光半导体有限责任公司招聘11人笔试考试备考题库及答案解析
- 2026中国能建全球校园招聘长沙理工大学站笔试考试参考题库及答案解析
- 2025浙江宁波前湾新区所属事业单位招聘工作人员5人笔试考试参考题库及答案解析
- 2025四川泸州江阳区城镇公益性岗位招聘考试笔试模拟试题及答案解析
- 2025天津市环湖医院第三批次人事代理制招聘49人考试笔试备考题库及答案解析
- 安全防护用品采购合同
- 无能力抚养孩子委托他人抚养委托书
- 2023年石家庄市社区工作者招聘考试真题
- 《得道多助-失道寡助》对比阅读6篇(含答案)
- 啤酒厂全套安全生产操作规程
- 全国各省市中小学使用教材版本目录
- 【知识解析】光武帝刘秀主题图集
- 新媒体数据分析与应用完整PPT全套教学课件
- 青海省干部履历表实用文档
- 电瓶车维修费用明细
- 高中生良好习惯养成教育主题班会PPT
评论
0/150
提交评论