运算器组成实验_第1页
运算器组成实验_第2页
运算器组成实验_第3页
运算器组成实验_第4页
运算器组成实验_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

目录=一、实验目的-3二、实验设备-3三、实验任务-3四、预备知识-4五、实验要求-6六、实验步骤- -7七、具体实验电路分析,操作与数据记录-8八、实验的问题与应对- 16九、体会与收获-16一、实验目的1、掌握带累加器的运算器实验。2、掌握溢出检测的原理和实现方法;3、理解有符号数和无符号数运算的区别,4、理解基于补码的加/减运算实现原理5、熟悉运算器的数据传输通路。6、利用74181和74182以及适当的门电路和多路选择器设计一个运算,要求支持有符号数和无符号数运算,支持补码加/减运算,支持有符号数溢出检测等功能。二、实验设备JZYL型计算机组成原理实验仪一台。芯片:74LSl81:运算器芯片2片74LS373:八D锁存器2片其它基本器件若干。自己设计一个电路和利用实验参考电路进行实验,实验要求先将多个运算数据事先存入存储器中,再由地址选中,选择不同的运算指令,进行运算,并将结果显示,还可以进行连续运算和移位,最后将最终结果回写入存储器中。复习前两个实验电路中各个信号的含义和作用,重点是运算与存储器之间的数据通路三、实验任务1、利用74181设计8位运算器;2、设计基于单符号位的溢出检测方法和实现电路(要求能支持有符号数和无符号数加法运算的溢出检测。选择适当的数据验证你所设计的电路的功能。)3、利用373芯片增加累加器功能4、对上述电路进行综合集成,利用多路选择器设计电路,实现对有符号数(用补码进行计算)和无符号数运算、加/减运算的支持;四、预备知识1、运算器的相关知识运算器是对数据进行加工处理的部件,它具体实现数据的算术运算和逻辑运算,所以又称算术逻辑运算部件,简称ALU,它是中央处理器的重要组成部分。计算机中的运算器结构一般都包含如下几个部分:加法器、一组通用寄存器、输入数据选择电路和输出数据控制电路等。SN74181是一个四位的算术逻辑运算单元,它的基本算术逻辑运算单元仍然以FA为基础,通过在FA输入端增加函数发生器改变输入数据的特性,使得这些数据经过FA后能实现更多和更复杂的算术、逻辑运算功能。1、对74LS181的说明74LS181是一个四位运算器。实验中要用多个如下图所示的异或门来实现数据的奇偶校验。74LS181真值表: 2、对74SL373的说明: 八D 锁存器(3S,锁存允许输入有回环特性) 简要说明: 373为三态输出的八D 透明锁存器,共有54/74S373 和54/74LS373 两种线路结构型式,其主要电器特性的典型值如下(不同厂家具体值有差别): 型号 tPd PD 54S373/74S373 7ns 525mW 54LS373/74LS373 17ns 120mW 373 的输出端O0O7 可直接与总线相连。当三态允许控制端 OE 为低电平时,O0O7 为正常逻辑状态,可用来驱动负载或总线。当OE 为高电平时,O0O7 呈高阻态,即不驱动总线,也不为总线的负载,但锁存器内部的逻辑操作不受影响。当锁存允许端 LE 为高电平时,O 随数据D 而变。当LE 为低电平时,O 被锁存在已建立的数据电平。当 LE 端施密特触发器的输入滞后作用,使交流和直流噪声抗扰度被改善400mV。引出端符号:D0D7 数据输入端 OE 三态允许控制端(低电平有效) LE 锁存允许端 O0O7 输出端: 74LS373真值表 DnLEOEOnHHLHLHLLXLLQ0XXH高阻态五、实验要求1、作好预习1)掌握运算器的数据传送通路和74181ALU的功能特性。2) 熟悉ALU并行进位的工作原理和实现方法;3) 掌握溢出检测的原理和实现方法;4) 理解有符号数和无符号数运算;5)在课外利用EDA软件先设计功能电路,并进行功能仿真2、实验实施1)分功能模块设计各功能单元电路,对设计进行详细的分析与说明2)逐步将各功能模块集成3)设计特定数据,验证各模块的功能,做好数据的记录工作六、实验步骤1、实验前的准备1)复习有关运算器的内容,对数据通路的构成、数据在数据通路中的流动及控制方法有基本的了解。2)熟悉电路中各部分的关系及信号间的逻辑关系3)参考芯片手册,自己设计实验电路,画出芯片间管脚的连线图,标上引脚号,节省实验的时间。4)对所设计的电路进行检查,重点是检查能否控制数据在电路中不同部件之间的传输。2、实验步骤实验可按照自己设计的电路或参考电路按照搭积木的方式进行。先完成运算器的数据通路部分,在运算器部分能够正确完成各类运算的基础上,再增加累加器、异常检测和运用求补器进行无符号数减法的功能。其它补充:第1步完成:至少验证4个算术运算、4个逻辑运算。第2步完成:先增加溢出检测电路并验证再增加373并验证第3步完成:1、再加一个373及灯,依次看到373灯的变化。2、将下面一个373的输出代替“”,然后交替使373工作,可以看到累加器的效果。第4步完成:增加求补逻辑一个开关控制为真传或求补。仅算术加法时才用上求补。七、具体实验电路分析,操作与数据记录分析第一步:利用74181设计8位运算器在进行第一步实验之前,检查芯片的好坏和导线的好坏。在检查74LS181时根据如下的功能图(图3)进行了两组数据验证,达到了预期的效果,芯片完好。验证结果如下表3(0表示L,1表示H)S3 S2 S1 S0数据A数据B 运算类型理论值实际值0 0 0 0 算术运算0 1 0 1逻辑运算 表374LS181的功能表3: 验证后按照如下电路图(图4)连接两个74LS181芯片,连接后根据功能图3进行了如下的八组运算,如表4所示: 图4具体电路如下所示:八组运算结果如下表4所示,全部吻合(0表示L,1表示H):S3 S2 S1 S0数据K0K7运算类型理论值实际值0 0 0 0逻辑运算M=H0 0 0 0算术运算M=L,Cn=L0 0 0 1逻辑运算M=H0 0 0 1算术运算M=L,Cn=L1 0 0 1逻辑运算M=H1 0 0 1算术运算M=L,Cn=L1 1 1 1逻辑运算M=H1 1 1 1算术运算M=L,Cn=L 表4第二步:设计基于单符号位的溢出检测方法和实现电路溢出检测电路如图5所示: 溢出检测电路的实现规则:设立一个二路选择器,当P=1时选择有符号数的运算,即如上图的溢出检测的结果为信号指示灯。(1)P=1有符号数的溢出检测原理:根据操作数和结果运算结果的符号位是否一致进行检测。因为只有两个同符号数相加时才会又可能产生溢出 设Xf,Yf未参加运算数的符号位,Sf为结果的符号位,V为溢出标志位,取V为1时表示发生溢出。 则可得实现溢出检测的逻辑表达式 V= XfYfSf+XfYfSf 即取最高位的X Y 与S比较。(2)P=0无符号数的溢出检测原理:根据最高位是否发生进位来判断。 即实现溢出检测的逻辑表达式: V= Cf设计好溢出电路之后,按步骤2的图5连接好溢出检测电路,根据图6连接好电路。 图6具体电路图:由于溢出只发生在算术运算中,故下表中的M Cn 只取0 1.(1)无符号数溢出检测结果如下表5:(0表示L,1表示H)S3 S2 S1 S0数据K0K7M Cn理论值实际值溢出灯1 0 0 1 0 1红,有溢出1 0 0 1 0 1蓝,无溢出1 1 0 0 0 1蓝,无溢出1 1 0 1 0 1红,有溢出 表5(2)有符号数溢出检测结果如下表6:(0表示L,1表示H)S3 S2 S1 S0数据K0K7M Cn理论值实际值溢出灯1 0 0 1 0 1蓝,无溢出1 0 0 1 0 1红,有溢出1 1 0 0 0 1蓝,无溢出1 1 0 1 0 1蓝,无溢出 表6经过以上两种不同的检测验证,证明了电路的溢出检测功能正确。第三步:利用373芯片增加累加器功能在这一步进行时既进行了累加功能,根据图7连接好累加电路 图7具体电路图:执行检测的步骤:(1)将K0-K7全部置0,打开373锁存器1.(2)第一组灯的结果为,(3)关闭锁存器1,打开锁存器2,得第二组灯的结果为。(4)关闭锁存器2,将K0K7置(5)打开锁存器1,得灯的结果为(6)不断执行(3)(4)(5),发现实现了累加器的功能(每次加2)。实验中将初始数据存入第一个373锁存器,然后将数据再送入第二个锁存器,第二个373再将数据送入和K0K7的数相加,结果送入第一个373,并显示。再把加的结果循环送入第二个373锁存来进行下一步的加法,即相当于实现了累加,每次累加的值为K0-K7所表示的数。经过这一步的实验圆满完成了这一步的累加功能。第四步:对上述电路进行综合集成,利用多路选择器设计电路,实现对有符号数(用补码进行计算)和无符号数运算、加/减运算的支持;设计求补电路如下图图8所示: 图8 求补电路工作原理:(1) 当P=0时,则相当与输入无符号数。 (2) 当输入负数时,取P=1,对每一个输入的信号与P取异或,将P取反输入到Cn作为初始进位。即达到了对输入的信号求补的运算。在累加的基础上,接入求补电路,如下图图9所示,连接起电路图。具体电路图: 实验检测步骤:(1) 选择P是有符号还是无符号数的运算,然后将开关K0 - K7 输入一个数值。(2) 执行相应的运算,判断运算的结果是否正确,同时判断溢出检测的结果是否正确。 执行有符号数和无符号数加减,对有符号数和无符号数的求补选择,同时进行溢出的判断。并输出结果。执行后实验的结果在有符号数及无符号数求补及其相应的运算结果都是正确的,则实验是成功的。综合以上四步电路设计及其分析,我们得到总体的电路图如下:八、实验中碰到的问题和解决的方法1)实验台上开关,灯泡问题 由于坏的很多,所以要一个一个的检验所有的开关,将坏掉的开关做上标记,并充分利用未坏掉的开关来满足实验对电路开关的要求;对于灯泡也可以这样,进行标记和处理。2)经常出现导线和芯片坏掉的问题 解决的方法:每一根导线必须进行测试,以保证其可用性。而芯片使用前也要进行测试。不然可能会影响到整个实验。3)连好线后,进行各种测试和实验时,发现与预计实验结果不符。 这个与实验的电路连接和导线,芯片,开关,灯泡的可用性都有关系,一旦出现问题,个人感觉就十分复杂了,返回一步一步的检查是很难的检查出来的,有时候老师也不一定能解决问题。如果能检查出来是哪一步出了问题最好,如果实在不行,那么只有拆了,然后重组。九、实验体会和收获这是计算机组成原理的第一个实验,虽然还有点陌生,但是有着数字逻辑的实验操作基础,而且本次实验电路图由老师直接提供,我们只需要按照电路图连接就可以了,但是就是如此,仍然遇到许多问题,就像老师所说,实验想要成功,必须要天时地利人和

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论