奇偶校验-通信原理课程设计

合集下载

《通信原理》obe教学大纲

《通信原理》obe教学大纲

《通信原理》obe教学大纲一、引言通信原理是计算机科学与技术专业中的重要课程,掌握通信原理对于学生今后的学习和工作都具有重要意义。

为了提高教学质量和教学效果,制定《通信原理》OBE教学大纲是必不可少的。

二、教学目标1. 知识能力通过学习《通信原理》课程,学生应能够掌握以下知识和能力:1.1 了解通信原理的基本概念和基本原理;1.2 理解数字通信系统的基本原理和信号传输方式;1.3 掌握调制解调技术和带通信号的传输;1.4 了解多路复用技术和调制解调器的工作原理;1.5 了解误码检测和纠正的基本方法。

2. 实际应用能力2.1 能够对通信原理进行分析和设计,解决实际通信系统中的问题;2.2 能够使用通信原理的相关工具和设备进行实际操作;2.3 具备开展通信原理实验和项目的能力。

3. 综合能力3.1 能够独立学习和掌握新的通信原理知识;3.2 具备良好的团队合作和沟通能力;3.3 具备批判性思维和问题解决能力。

三、教学内容与进度安排1. 课程简介与基本概念1.1 通信原理的定义和作用;1.2 信号与系统的基本概念与模型;1.3 通信系统的基本组成和工作原理。

2. 数字通信系统2.1 数字信号的特点与表示方法;2.2 传输信道的基本特性;2.3 基带传输系统与带通信号传输系统;2.4 数字调制和解调技术。

3. 多路复用技术3.1 多路复用的基本概念和分类;3.2 分时复用技术;3.3 频分复用技术;3.4 波分复用技术。

4. 误码检测和纠正4.1 误码的发生原因和分类;4.2 奇偶校验和循环冗余校验;4.3 海明码与纠错编码。

四、教学方法与手段1. 理论讲授通过讲解教材内容,结合实例和案例分析,帮助学生理解通信原理的基本概念和原理。

2. 实验教学设置相关实验项目,供学生进行实际操作,培养学生的实际应用能力。

3. 小组讨论与案例分析通过小组讨论和案例分析的方式,促进学生之间的交流与合作,提高问题解决能力。

湖南省信息技术赛课优质课教学设计 《信息的校验--奇偶校验》

湖南省信息技术赛课优质课教学设计 《信息的校验--奇偶校验》

信息的校验—奇偶校验执教者:长沙高新区明德麓谷学校江英授课课题信息的校验--奇偶校验课时 1选用教材湖南省义务教育教科书八年级上册《Computer Science Unplugged》(即《不插电的计算机科学》)教学内容分析在生活中,我们经常会听到说“人工算容易出错,可以用计算机算吗?”“这个是计算机算出来的,不会错!”诸如此类的话。

看来大家对计算机处理信息的能力是很信任的。

可是计算机真的不会出错吗?出错了怎么办?以教科书八年级上册为基础,着重培养计算思维的《Computer Science Unplugged》为拓展,从培养学生信息素养和计算思维出发,结合学生“乐于探究计算机内部秘密”的兴趣,进行二次开发,共设计了两节课《第一节二进制和计算机》和《第二节信息的校验--奇偶校验》,丰富现有教材,开阔学生的视野。

通过第一节课让学生了解计算机信息处理最基本的数制--二进制。

在第一节课的基础上,通过对本节课(《第二节信息的校验--奇偶校验》)的学习,分析最基础最简单的信息校验--奇偶校验,让学生了解计算机信息处理时也会出错,而计算机通过信息的校验发现和修改错误,是一个由浅入深的过程。

在学习的过程中,理解“利用数据的奇偶性解决问题”这种计算思维,尝试运用“对比探究”和“分类探究”的方法,引导学生用计算机科学家的思维方式思考并解决问题,提升信息处理能力(信息素养)。

学习者分析本课教学面向八年级学生,该学段学生已经初步掌握了比特的概念及计算机内部用二进制传递信息等信息技术知识,懂得了基本的信息技术操作技能,但很多同学只知道计算机能正确的处理和传输信息,至于计算机怎么保证信息的正确性,基本没有太多的了解和认识。

除此以外,这一阶段的学生思维较为活跃、乐于探索,但不太乐意听老师讲解大量相对抽象的理论知识。

抓住学生的这些特点,本节课设计了学生易接受并具有挑战性的探究活动,通过师生魔术互动游戏、自主开发设计《卡牌魔术》“小软件”(该软件用来模拟“真实的魔术互动”)等,辅助学生探究,给课堂注入活力的同时,使课堂教学更有效。

通信原理教案

通信原理教案

通信原理教案一、引言。

通信原理是现代信息技术中的重要基础课程,它涉及到信号传输、调制解调、信道编码、数字通信系统等多个方面的知识。

本教案旨在系统地介绍通信原理的基本概念、原理和技术,帮助学生全面理解通信原理的重要性和应用。

二、通信原理概述。

通信原理是指在通信系统中,信息的传输和处理原理。

通信原理的基本概念包括信号、调制解调、信道编码、数字通信系统等。

信号是指携带信息的载体,调制解调是将信息转换成适合传输的信号形式,信道编码是为了提高信号传输的可靠性和效率,数字通信系统是利用数字技术进行信息传输的系统。

三、通信原理教学内容。

1. 信号与系统。

信号与系统是通信原理的基础,学生需要了解信号的分类、性质和处理方法,以及系统对信号的处理过程和特性。

2. 调制解调。

调制解调是将信息转换成适合传输的信号形式的过程,学生需要掌握调制解调的基本原理和常见调制方式,如调幅调制、调频调制、调相调制等。

3. 信道编码。

信道编码是为了提高信号传输的可靠性和效率,学生需要学习信道编码的基本概念、编码原理和常见编码技术,如奇偶校验码、循环冗余校验码等。

4. 数字通信系统。

数字通信系统是利用数字技术进行信息传输的系统,学生需要了解数字通信系统的基本原理、结构和应用,以及数字调制解调技术、数字信道编码技术等。

四、教学方法与手段。

1. 理论教学。

通过讲授、讨论等方式,向学生介绍通信原理的基本概念和原理,帮助学生建立起对通信原理的整体认识。

2. 实验教学。

通过实验操作,让学生亲自动手,加深对通信原理的理解和掌握,培养学生的动手能力和实践能力。

3. 综合教学。

结合案例分析、课外阅读等方式,拓展学生对通信原理的应用和发展的认识,培养学生的综合素质和创新能力。

五、教学评估与建议。

1. 教学评估。

通过平时作业、实验报告、期末考试等方式,对学生的学习情况进行评估,及时发现问题,加强学生的学习指导和帮助。

2. 教学建议。

针对学生的学习情况和问题,及时调整教学内容和方法,提供个性化的学习指导和帮助,激发学生的学习兴趣和潜能。

创新实验VHDL奇校验

创新实验VHDL奇校验

学生实验报告实验课名称:创新实验实验项目名称:奇校验一、实验名称奇校验二、实验内容通过VHDL编程,实现一个奇校验,要求学号后三位转化成二进制作为数据输入端,其发送和接收原理图如下,首先在webpack 10.1上进行功能和时序仿真,之后通过器件及其端口配置下载程序到开发平台。

三、奇偶校验原理在数据传输过程中, 由于受到噪声干扰或传输中断等因素的影响容易使接收到的数据出现误码。

为了能及时可靠地把数据传箱给对方并有效地检测错误, 在传输时有必要进行校验, 而奇偶校验是常用的一种检错码,奇校验码是一种通过增加冗余位使得码字中”1 ”的个数恒为奇数的编码方法。

其局限性是只能检测出奇数个错误, 但由于其简单方便, 在数据传输的差错控制上仍然得到广泛的使用。

四、源代码发送部分:library IEEE;use IEEE.STD_LOGIC_1164.ALL;use IEEE.STD_LOGIC_ARITH.ALL;use IEEE.STD_LOGIC_UNSIGNED.ALL;---- Uncomment the following library declaration if instantiating---- any Xilinx primitives in this code.--library UNISIM;--use UNISIM.VComponents.all;entity send isPORT( IN_A: in STD_LOGIC_VECTOR(4 downto 0);OUT_A: out STD_LOGIC_VECTOR(5 downto 0) );end zxy;architecture Behavioral of send isbeginprocess(IN_A)variable a:STD_LOGIC_VECTOR(2 downto 0);begina:="000";--对变量赋初值for i in 0 to 4 loopif IN_A(i)='1' thena:=a+1;end if;end loop;OUT_A(4 downto 0)<=IN_A(4 downto 0);OUT_A(5)<=not(a(0));end process;end Behavioral;接收部分:library IEEE;use IEEE.STD_LOGIC_1164.ALL;use IEEE.STD_LOGIC_ARITH.ALL;use IEEE.STD_LOGIC_UNSIGNED.ALL;---- Uncomment the following library declaration if instantiating ---- any Xilinx primitives in this code.--library UNISIM;--use UNISIM.VComponents.all;entity zxy isport( I N_B: in STD_LOGIC_VECTOR(5 DOWNTO 0);OUT_B:out STD_LOGIC);end zxy;architecture Behavioral of zxy isbeginprocess(IN_B)variable a:STD_LOGIC_VECTOR(2 downto 0);BEGINa:="000";for i in 0 to 5 loopif IN_B(i)='1' thena:=a+1;end if;end loop;if a(0)='1' thenOUT_B<='1';--验证成功赋值为1elseOUT_B<='0';end if;end process;end Behavioral;五、实验小结通过本实验对奇偶校验有了更深刻的了解,通过使用VHDL 对奇偶校验的编写可以更加形象的看到其功能。

奇偶校验实验报告

奇偶校验实验报告

一、实验目的1. 理解奇偶校验的基本原理及作用。

2. 掌握奇偶校验的实现方法。

3. 学会使用Verilog语言设计奇偶校验电路。

4. 通过仿真验证奇偶校验电路的正确性。

二、实验原理奇偶校验是一种简单的错误检测码,用于检测数据在传输过程中是否发生错误。

其基本原理是在数据末尾添加一个校验位,使得数据位和校验位中1的个数为奇数或偶数。

如果接收方收到的数据位和校验位中1的个数不是奇偶性相同,则说明传输的数据出现了错误。

奇偶校验分为奇校验和偶校验两种:1. 奇校验:数据位和校验位中1的个数为奇数。

2. 偶校验:数据位和校验位中1的个数为偶数。

三、实验环境1. FPGA开发板:如Xilinx、Altera等。

2. Verilog开发工具:如Vivado、Quartus等。

3. 仿真工具:如ModelSim等。

四、实验步骤1. 设计奇偶校验电路(1)根据实验要求,设计一个同步时序电路,对串行二进制输入进行奇偶校验,每检测5位输入,输出一个结果。

(2)定义输入信号和输出信号:- 输入信号:serial_in(串行输入)- 输出信号:parity_out(奇偶校验输出)(3)编写Verilog代码实现奇偶校验电路:```verilogmodule parity_checker(input wire [4:0] serial_in,output reg parity_out);always @(posedge serial_in[0]) beginif (serial_in == 5'b11111) beginparity_out = 1'b1; // 5位输入中1的数目为奇数,输出1end else beginparity_out = 1'b0; // 5位输入中1的数目为偶数,输出0endendendmodule```2. 仿真验证(1)使用ModelSim进行仿真,验证奇偶校验电路的正确性。

奇偶校验电路设计

奇偶校验电路设计

奇偶校验电路设计一、实验目的1.熟悉QuartusII的使用;2. 学习在QuartusII中;3. 学习原理图方式自定义元件的输入,封装,调用;4. 掌握奇偶校验原理;5. 学会使用现成的芯片搭建目标电路。

二、实验内容和原理实验内容:(1)在QuartusII环境下以原理图方式建立顶层文件工程。

利用多个74386芯片搭建一个奇偶校验电路。

74386提供四个2输入异或门(2)建立仿真文件,观察输出结果。

实验原理:奇偶校验码是最简单的数据校验码,其码距为2,可以检测出一位错误,但无法指出错误的位置。

具体校验实现方法为将有效信息位和校验位读入,判断其1的个数是奇数个还是偶数个,在奇校验的情况下正常情况下个数应该为奇数个,偶校验正常情况下应该是偶数个。

校验码的生成:对于奇校验,判断有效信息位1的个数,若为偶数则校验位为1,奇数则校验位为0;偶校验反之。

具体实现的逻辑表达式如下:三、 实验设计原理图以及综合结果记录逻辑单元<Le>的消耗情况等。

原理图如下: 76543210校奇形成偶校验出错奇校验出错偶形成A B =1=1=1=1=1=1=1=111经过设计后用74386实现的原理图如下:综合结果如下图所示:四、仿真波形图画出波形图以及波形图中仿真信号的说明。

并分析结果(实验现象结论)。

仿真波形图如下所示:其中,D0-7为信息位,Djiao为校验位。

实验结果如下:说明:波形信息位为奇数个1,校验位为0时,输出的奇校验位为0,偶校验位为1,奇校验错误为0,偶校验错误为1(即有错)。

同理其他测试分别测试了信息位为奇数个1,校验位为1、信息位为偶数个1,校验位为1、信息位为偶数个1,校验位为0的情况,图中波形的测试完全符合预期要求。

五、实验中遇到的问题和解决方法。

在实验中遇到的主要问题:(1)操作不熟悉导找不到部分功能元件(2)由于连线有误,在仿真时结果出现错误。

解决方法:(1)寻找芯片时双击面板在搜索的框内打入全名(打入部分名字不显示)(2)仿真结果与预期不一致时,可以分析错误波形,从而准确找到出错的地方。

奇偶校验_校验和实验

奇偶校验_校验和实验

实验5-1纠错与检错1.实验内容读程序,在所有红色的“#”后面添加解释,说明程序的作用2.实验题目(1)奇偶校验码在原始模式上增加一个附加比特位,即奇偶校验位,使最后整个模式中1的个数为奇数(奇校验)或偶数(偶校验)。

本程序用到列表、字符串合并、取模等概念。

code=input("Please input a 7-bit-binary code:")a=0# for 循环作用是什么for i in range(0,6,1):if code[i]=='1':a=a+1print("After odd parity checking the code is:")if a%2==0:print(code+'1') # 这句做了什么else:print(code) # 这句做了什么print("After even parity checking the code is:")# 下面 if .. else …作用是什么if a%2==0:print(code)else:print(code+'1')(2)垂直水平奇偶校验如下图所示,14个字符纵向排列形成一个数据块,每个字符占据一列,低位比特在上,高位比特在下,用b8(第8位)作为垂直奇偶校验位,各字符的同一比特位形成一行,每一行的最右边一位作为水平奇偶校验位,这里在垂直和水平方向均采用偶校验。

#下面的函数做了什么 def oddeven(l): a=0for i in range(0,len(l),1): if l[i]=='1': a=a+1 if a%2==0: return '0' else:return '1'block=[['0']*15,['0']*15,['0']*15,['0']*15,['0']*15,['0']*15,['0']*15,['0']*15]for i in range(0,14,1):vcode=input("Please input a 7-bit-binary code:") for j in range(0,7,1): block[j][i]=vcode[j]block[7][i]=oddeven(vcode)# 这句做了什么 hcode=['0']*14for j in range(0,8,1):for i in range(0,14,1): hcode[i]=block[j][i]block[j][14]=oddeven(hcode)# 这句做了什么 print(block)(3)循环冗余校验任何一个二进制位串都可以用一个多项式来表示,多项式的系数只有0和1,n 位长度的码C 可以用下述n -1次多项式表示:()n 1n 210C x C x C x C x C --=++++ n-1n-21例如位串1010001可以表示为x 6+x 4+1。

关于单片机串口通信的奇偶校验

关于单片机串口通信的奇偶校验

关于单片机串口通信的奇偶校验(C语言的解决方案)2011-07-05 18:29最近做了一个项目,是关于51单片机与计算机之间的通信问题,上位机来控制下位机。

在通信中要求单字节偶校验,很少碰到在这里校验的,一般都是帧校验就可以了,但是为了提高精度,就加了偶校验。

那么用C语言怎么来处理单片机收发的偶校验问题呢?直接使用项目中的要求:波特率:9600,偶检验,停止位1,数据位8。

现在开始:单片机的奇偶校验使用串口工作方式2或者3,在有于波特率要求9600,所以使用串口方式3,这些设置自己查资料解决。

偶校验:就是发送的8个数据位的1的个数为偶数时,TB8=0;为奇数时,TB8=1;奇校验:与偶校验相反的TB8。

先讲发送字节时的偶校验:先看下汇编的解决方案是什么:MOV A,@R0MOV C,PMOV TB8,CMOV SBUF,@R0再看下C语言的解决方案:void chk_even(uchar dat)//要发送的数据位dat{ACC=dat;TB8=P;SBUF=dat;while(TI==0);TI=0;}这只是发送的一个字节的偶校验,接收时的为RB8位,学过的同学应该能看懂,要是还是感觉吃力的话,就继续查资料。

(程序中去掉了注释,请大家自己理解,加深印象。

)关于C语言的接受数据偶校验如下:void chk_even(uchar dat)//要接收的数据位dat{while(RI==0);RI=0;dat=SBUF;ACC=dat;if(RB8==P) chk_flag=0;else chk_flag=1;}。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

西南科技大学通信原理设计报告课程名称:通信原理课程设计设计名称:奇偶校验编码仿真姓名:王雷学号: 20105615班级:通信1004指导教师:秦明伟起止日期:2013年7月5日星期五西南科技大学信息工程学院制方向设计任务书学生班级:通信1004 学生姓名:王雷学号:20105615 设计名称:奇偶校验编码仿真起止日期:2013年7月5日星期五指导教师:秦明伟方向设计学生日志奇偶校验编码仿真一、摘要(150-250字)奇偶校验是一种校验代码传输正确性的方法。

根据被传输的一组二进制代码的数位中“1”的个数是奇数或偶数来进行校验。

采用奇数的称为奇校验,反之,称为偶校验。

采用何种校验是事先规定好的。

通常专门设置一个奇偶校验位,用它使这组代码中“1”的个数为奇数或偶数。

若用奇校验,则当接收端收到这组代码时,校验“1”的个数是否为奇数,从而确定传输代码的正确性。

二、设计目的和意义认识matlab软件,学习掌握matlab的基本操作方法,熟悉M文件和simulink的具体实现方法,了解数据奇偶校验的原理和在matlab中的基本仿真,通过对简单的通信实验设计,提高了动手能力和对matlab操作,巩固了课程知识。

三、设计原理在数据传输前附加一位奇校验位,用来表示传输的数据中"1"的个数是奇数还是偶数,为奇数时,校验位置为"0",否则置为"1",用以保持数据的奇偶性不变。

例如,需要传输"11001110",数据中含5个"1",所以其奇校验位为"0",同时把"110011100"传输给接收方,接收方收到数据后再一次计算奇偶性,"110011100"中仍然含有5个"1",所以接收方计算出的奇校验位还是"0",与发送方一致,表示在此次传输过程中未发生错误。

奇偶校验就是接收方用来验证发送方在传输过程中所传数据是否由于某些原因造成破坏。

奇偶校验原理是基于异或的逻辑功能。

奇偶校验的编码方法是在原信号码组后面添加以为监督码元,奇偶校验分为奇校验和偶校验,奇校验是原信息码元加上监督码元后,使整个组成的数码组中,1的个数为奇数个。

偶校验的工作原理则正好与奇校验相反。

对于n位二进码a1a2a3a4……a n奇校验有如下表示:a1⊕a2⊕a3⊕a4……⊕a n⊕C=1偶校验的表达式为:a1⊕a2⊕a3⊕a4……⊕a n⊕C =1其中,C为监督码元,在本设计中n为8,可以推出C的表达式为:C =a1⊕a2⊕a3⊕a4……⊕a8在发送端让其监督码和信息码一起发送,在信息接收端,计算校验因子的表达式为:、S=a1⊕a2⊕a3⊕a4……⊕a n⊕C四、详细设计步骤1.创建一个M文件,保存到自定义的文件夹中。

2.在M文件中,首先利用rand函数随机生成一组八位的只包含0和1的数组a,设置当a(n)大于0.5时,设a为1,小于0.5,则为0,这样0和1等概率出现,即出现一组随机等概(n)率的八位都为0或者1的数组。

3.同样用rand函数生成一组八位的只含有0和1的数组b,但是要设置当b大于0.95时,(n)才给其赋值为1,其他为0,这样在异或的逻辑检测中容易检测到错误序列,其中的0.95是一个自己可以设定的概率大小,本设计选择0.95.4.利用已知的数组a相互异或生成数C,利用数组a和b对应相互异或生成数组c,然后用c和数C分别模拟接受到的八位有效位和校验位。

5.把C和c相互异或可以生成数S,当S大于0时,则表示b中有1的出现,既某些位错误传输了,当S等于0时,则表示原有效数据传输正确。

(由于奇偶校验只是检查当发生奇数数位变化时,才能够通过异或的关系检测到变化,当你错误位为偶数时,不能够检测出你传输出错。

)6.在程序的开始,初始化S=1,并且设置只能当S大于0时才进入到后面的数据处理,在程序的结尾,设置了一个判断打印函数和一个断点函数pause,,这样当有错误产生的时候,可以提示错误警告,在从新点击enter键时,程序会再次传输一次,一直到S=0,即传输没有错误产生。

7.在M文件中点击运行,观察实验结果,本实验未来更加直观的感受到数据传输和接受的情况,在传输的数据赋值为send,接收数据为receive。

该M文件中,程序利用校验因子S用于判断传输途中是否有错,从而决定信号是否被重新传输;程序利用随机数列b模拟使传输信号出错率为5%的干扰信号。

程序中的while循环中被加入了一个pause命令。

在pause的作用下,当程序模拟一次信号传输后,不管模拟的传输信号是否需要被重传,程序都将暂停执行。

在程序结束运行之后,如果前一次循环传输成功(即S=0),则用户在按下【Enter】键后程序结束运行;如果前一次循环传输有错(即S=1),则用户按下【Enter】键后,程序将再次进入while循环,如此反复直到传输成功(即S=0),程序运行结束。

实验M文件源程序:clc;clear;a=rand(1,8);S=1;while S>0b=rand(1,8)for i=1:8if a(i)>0.5a(i)=1else a(i)=0endif b(i)>0.95b(i)=1else b(i)=0endc(i)=a(i)+b(i)if c(i)==2c(i)=0endendsend=a;receive=cfor i=1:7send (i+1)=send (i)*not(send (i+1))+not(send (i))*send (i+1)receive (i+1)=receive (i)*not(receive (i+1))+not(receive (i))*receive (i+1) endC=send(8)B=receive(8)S=B*not(C)+not(B)*Cif S==1fprintf('传输错误,请重传!')endpause;end五、设计结果及分析1.在M文件中点击运行后,在command window窗口观察实验结果并截图:传输数据为【01000110】接收数据为【01000110】校验码S值为0传输过程没有出现错误2.当传输出现错误时如下图所示校验码S值为1说明传输出现错误,按【Enter】键进行重新传输,如果还是有错则再次按【Enter】键重新传输直至正确,按【Enter】键结束程序。

六、总结奇偶校验是带有一段信息关联的冗余信息,带奇偶校验的带区集意味着每行有一个附加的奇偶校验带区。

因此,必须使用至少三个(而不是两个)磁盘才能考虑该附加的奇偶校验信息。

奇偶校验带区包括该带区内数据的XOR(称为排它性“或”的布尔操作)。

重新生成失败的磁盘时,WindowsNTServer将使用这些带区中与完好磁盘上数据关联的奇偶校验信息重新在失败盘上创建数据。

奇偶校验能够检测出信息传输过程中的部分误码(1位误码能检出,2位及2位以上误码不能检出),同时,它不能纠错。

在发现错误后,只能要求重发。

但由于其实现简单,仍得到了广泛使用。

为了能检测和纠正内存软错误,首先出现的是内存“奇偶校验”。

内存中最小的单位是比特,也称为“位”,位只有两种状态分别以1和0来标示,每8个连续的比特叫做一个字节(byte)。

不带奇偶校验的内存每个字节只有8位,如果其某一位存储了错误的值,就会导致其存储的相应数据发生变化,进而导致应用程序发生错误。

而奇偶校验就是在每一字节(8位)之外又增加了一位作为错误检测位。

在某字节中存储数据之后,在其8个位上存储的数据是固定的,因为位只能有两种状态1或0,假设存储的数据用位标志为1、1、1、0、0、1、0、1,那么把每个位相加(1+1+1+0+0+1+0+1=5),结果是奇数。

对于偶校验,校验位就定义为1,反之则为0;对于奇校验,则相反。

当CPU读取存储的数据时,它会再次把前8位中存储的数据相加,计算结果是否与校验位相一致。

从而一定程度上能检测出内存错误,奇偶校验只能检测出错误而无法对其进行修正,同时虽然双位同时发生错误的概率相当低,但奇偶校验却无法检测出双位错误。

奇偶监督码是一种增加二进制传输系统最小距离的简单和广泛采用的方法。

例如,单个的奇偶监督将使码的最小距离由一增加到二。

一个二进码字,如果它的码元有奇数个1,就称为具有奇性。

例如,码字“1011010111”有七个1,因此,这个码字具有奇性。

同样,偶性码字具有偶数个1。

注意奇性检测等效于所有码元的模二加,并能够由所有码元的异或运算来确定。

对于一个n位字,奇性下式给出:奇性=a0⊕a1⊕a2⊕…⊕an(8-1)很明显,用同样的方式,我们也能够根据每一个码字的零的个数来构成奇偶监督。

单个的奇偶监督码可描述为:给每一个码字加一个监督位,用它来构成奇性或偶性监督。

在一个典型系统里,在传输以前,由奇偶发生器把奇偶监督位加到每个字中。

原有信息中的数字在接收机中被检测,如果没有出现正确的奇、偶性,这个信息标定为错误的,这个系统将把错误的字抛掉或者请求重发。

注意,用单个的奇偶监督码仅能检出奇数个码元的错误。

Matlab是一种方便的容易上手的数学软件,其软件编写语言和其他程序语言相通,并且更加灵活,在其中创建M文件可以很好的模拟本次奇偶校验的实验现象。

通过在其中的simulink 中添加控件模块,能够更加直观的感受到本次实验的通信传输特性。

在本次实验中,实验的内容相对简单,概念容易理解,在M文件中,利用了matlab固有的rand函数和pause等语句,简单的在异或的关系上实现了奇偶校验的仿真,并且能够体现数据在真实传输过程中的误差性,当数据在传输出现错误的时候,会提示传输错误并且从新传输直到传输正确为止。

七、体会在本次实验中,通过对实现实验目的的一步步研究,让我学习到了查阅资料,操作matlab 软件的一些基本方法,也让我深刻认识到了自学能力的重要性。

在实验之初,我对于matlab 了解很少,只是知道它是一款非常流行的数学软件,在国内外的数学研究上有举足轻重的地位,在这次实验中,我发现原来matlab还有更多的应用功能,比如在通信的实验仿真,在物理电路等实验的仿真。

本次实验让我更加深刻的理解了奇偶校验的原理,奇偶校验是一种比较简单的解决通信传输误差的分析方法,在一般要求不高的通信传输中有着重要的作用,能够避免大部分传输误差,由于其原理简单,容易实现,因此在通信传输方面得到了广泛的应用和发展,这次试验我从根本上了解了其通信传输的原理和实现方法,在简单的仿真实验中,加深了对matlab软件的认识,也提高了自己的动手操作能力,了解了关于matlab的M文件和simulink的基本操作,也认识了matlab的一些重要的函数。

相关文档
最新文档