数字电路实验报告

数字电路实验报告

ID:12422990

大小:651.69 KB

页数:29页

时间:2018-07-17

数字电路实验报告_第1页
数字电路实验报告_第2页
数字电路实验报告_第3页
数字电路实验报告_第4页
数字电路实验报告_第5页
资源描述:

《数字电路实验报告》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、目录实验一四位海明校验码的逻辑设计2实验二十六进制译码计数器的设计6实验三脉冲分频逻辑电路的设计10实验四八位数据串入并出逻辑设计16实验五十六位运算器的逻辑设计20实验六4Kx8bit存储器的设计25实验一四位海明校验码的逻辑设计实验目的:掌握海明校验的编码原理以及设计、调试方法,巩固提高组合逻辑知识,培养实际动手能力。掌握总线的应用方法。掌握总线信息出错时发现错我和纠正错我的原理,掌握奇偶校验的原理,掌握海明校验编码原理以及设计、调试方法。实验要求:(1)设计信息位为4位的内存的海明校验逻辑电路,在读内存储器时,具有一位出2

2、9错报错和纠正一位错误的功能。(1)为了难其正确性,在读出信息的通路上,要串入造错用逻辑,位数自定。(2)奇偶发生器与海明校难器对同一位用一块奇偶校验集成块实验原理:检错和校错由编码理论,任何一种编码是否具有检测和纠错能力,都与编码的最小距离有关,即任何两组合法代码间最少的二进制位数的差异,L-1=D+C(D>=C)L为编码的最小距离,D表示检测错误的位数;C表示纠正错误的位数。故,8421码不具备检错能力,这是因为它的最小码距为1,当8421码的码字中有一位出错,而产生的错误代码就有可能是另一个码字,这样,无法判断它是否已出错

3、。8421海明校验码8421海明校验码由8421码加三位校验码组成.设8421码为I1I2I3I4,三位校验码为:P3P2P1,则8421码为下列七位代码:位序76543218421海明码I4I3I2P3I1P2P1校验码的值由下式确定:由此可得8421海明码的最小码距为3,故D=1,C=1,可检测并纠正一位错误。输出时在输出端先求出校验和:29然后判断S3S2S1,如果代码不出错,则S3S2S1=000,否则由S3S2S1构成的二进制数为1位指出出错位。实验实现:1.利用QuartusII工具,画出实验的TTl电路如下图经过编

4、译仿真之后,仿真波形图如下图:如图看见,当造错数据只与原数据有一位错(1000,0100,0010,0001)时,输出的数据和输入的数据是一样的,通过海明码将错误的一位数据进行了修正。而当没有数位错的时候,yes输出的值变为1,表明在传输过程中,数据位并没有出错。2.海明校验码的verilog实现Verilog代码如下modulehaiming(num,mistake,out);29input[3:0]num;input[3:0]mistake;output[3:0]out;wire[2:0]hmnum;wire[2:0]ckh

5、mnum;wire[3:0]misnum;wire[3:0]erbit;assignhmnum[0]=num[3]^num[1]^num[0],hmnum[1]=num[3]^num[2]^num[0],hmnum[2]=num[3]^num[2]^num[1];assignckhmnum[0]=misnum[3]^misnum[1]^misnum[0]^hmnum[0],ckhmnum[1]=misnum[3]^misnum[2]^misnum[0]^hmnum[1],ckhmnum[2]=misnum[3]^misnum[2

6、]^misnum[1]^hmnum[2];assignmisnum[0]=num[0]^mistake[0],misnum[1]=num[1]^mistake[1],misnum[2]=num[2]^mistake[2],misnum[3]=num[3]^mistake[3];assignerbit[0]=(~ckhmnum[2])&ckhmnum[1]&ckhmnum[0],erbit[1]=ckhmnum[2]&(~ckhmnum[1])&ckhmnum[0],erbit[2]=ckhmnum[2]&ckhmnum[1]&(

7、~ckhmnum[0]),erbit[3]=ckhmnum[2]&ckhmnum[1]&ckhmnum[0];assignout=erbit^misnum;endmodule这段代码,我用的assign语句,对wire类型进行赋值,因为在TTL电路之中并没有用到寄存器,而且这是一个典型的组合逻辑电路,所以并没有只用reg寄存器类型的变量。其中的每一个赋值都和上述的TTL电路相对应。其中num为输入的数据,mistake为造错的输入,hmnum为由输入数据所得到的的海明码,misnum为造错之后线路上的值,ckhmnum为根据海明

8、码和数据生成的用于纠错的海明码,而erbit为根据ckhmnum所得到的哪一位错误的信息,最后根据这信息将错误的位进行改正。下面是根据verilog编译仿真后的波形图29如图,当造错数据只与原数据有一位错(1000,0100,0010,0001)时,输出的数据和

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

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

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