运算器组成实验

  • 格式:docx
  • 大小:735.04 KB
  • 文档页数:16

1 / 16 目录 ==============================

一、实验目的-----------------------------------------------------------------------------------3

二、实验设备-----------------------------------------------------------------------------------3 三、实验任务-----------------------------------------------------------------------------------3 四、预备知识----------------------------------------------------------------------------------4

五、实验要求----------------------------------------------------------------------------------6

六、实验步骤----------------------------------------------------------------------------- ----7

七、具体实验电路分析,操作与数据记录----------------------------------------8

八、实验的问题与应对------------------------------------------------------------------16

九、体会与收获--------------------------------------------------------------------------16 2 / 16

一、实验目的 1、掌握带累加器的运算器实验。 2、掌握溢出检测的原理和实现方法; 3、理解有符号数和无符号数运算的区别, 4、理解基于补码的加/减运算实现原理 5、熟悉运算器的数据传输通路。 6、利用74181和74182以及适当的门电路和多路选择器设计一个运算,要求支持有符号数和无符号数运算,支持补码加/减运算,支持有符号数溢出检测等功能。

二、实验设备 JZYL—Ⅱ型计算机组成原理实验仪一台。 芯片:74LSl81:运算器芯片2片 74LS373:八D锁存器2片 其它基本器件若干。 自己设计一个电路和利用实验参考电路进行实验,实验要求先将多个运算数据事先存入存储器中,再由地址选中,选择不同的运算指令,进行运算,并将结果显示,还可以进行连续运算和移位,最后将最终结果回写入存储器中。 复习前两个实验电路中各个信号的含义和作用,重点是运算与存储器之间的数据通路 三、实验任务 1、利用74181设计8位运算器; 2、设计基于单符号位的溢出检测方法和实现电路 3 / 16

(要求能支持有符号数和无符号数加法运算的溢出检测。选择适当的数据验证你所设计的电路的功能。) 3、利用373芯片增加累加器功能 4、对上述电路进行综合集成,利用多路选择器设计电路,实现对有符号数(用补码进行计算)和无符号数运算、加/减运算的支持;

四、预备知识 1、运算器的相关知识 运算器是对数据进行加工处理的部件,它具体实现数据的算术运算和逻辑运算,所以又称算术逻辑运算部件,简称ALU,它是中央处理器的重要组成部分。计算机中的运算器结构一般都包含如下几个部分:加法器、一组通用寄存器、输入数据选择电路和输出数据控制电路等。SN74181是一个四位的算术逻辑运算单元,它的基本算术逻辑运算单元仍然以FA为基础,通过在FA输入端增加函数发生器改变输入数据的特性,使得这些数据经过FA后能实现更多和更复杂的算术、逻辑运算功能。

1、对74LS181的说明 74LS181是一个四位运算器。实验中要用多个如下图所示的异或门来实现数据的奇偶校验。 74LS181真值表: 4 / 16 2、对74SL373的说明: 八D 锁存器(3S,锁存允许输入有回环特性) 简要说明: 373为三态输出的八D 透明锁存器,共有54/74S373 和54/74LS373 两种线路结构型式,其主要电器特性的典型值如下(不同厂家具体值有差别):

型号 tPd PD

54S373/74S373 7ns 525mW 54LS373/74LS373 17ns 120mW

373 的输出端O0~O7 可直接与总线相连。 当三态允许控制端OE 为低电平时,O0~O7 为正常逻辑状态,可用来驱动负载或总线。当OE 为高电平时,O0~O7 呈高阻态,即不驱动总线,也不为总线的负载,但锁存器内部的逻辑操作不受影响。 当锁存允许端LE 为高电平时,O 随数据D 而变。当LE 为低电平时,O 被锁存在5 / 16

已建立的数据电平。 当LE 端施密特触发器的输入滞后作用,使交流和直流噪声抗扰度被改善400mV。 引出端符号: D0~D7 数据输入端 OE 三态允许控制端(低电平有效)

LE 锁存允许端O0~O7 输出端: 74LS373真值表

Dn LE OE On H H L H L H L L X L L Q0 X X H 高阻态

五、实验要求 1、作好预习 1)掌握运算器的数据传送通路和74181ALU的功能特性。 2) 熟悉ALU并行进位的工作原理和实现方法; 3) 掌握溢出检测的原理和实现方法; 4) 理解有符号数和无符号数运算; 5)在课外利用EDA软件先设计功能电路,并进行功能仿真

2、实验实施 1)分功能模块设计各功能单元电路,对设计进行详细的分析与说明 2)逐步将各功能模块集成 3)设计特定数据,验证各模块的功能,做好数据的记录工作

六、实验步骤 1、实验前的准备 6 / 16

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 算术运算 7 / 16

0 1 0 1 逻辑运算 表3 74LS181的功能表3:

验证后按照如下电路图(图4)连接两个74LS181芯片,连接后根据功能图3进行了如下的八组运算,如表4所示:

图4 具体电路如下所示: 8 / 16

八组运算结果如下表4所示,全部吻合(0表示L,1表示H): S3 S2 S1 S0 数据K0—K7 运算类型 理论值 实际值 0 0 0 0 逻辑运算M=H 0 0 0 0 算术运算M=L,Cn=L 0 0 0 1 逻辑运算M=H 0 0 0 1 算术运算M=L,Cn=L 1 0 0 1 逻辑运算M=H 1 0 0 1 算术运算M=L,Cn=L 1 1 1 1 逻辑运算M=H 1 1 1 1 算术运算M=L,Cn=L 表4 第二步:设计基于单符号位的溢出检测方法和实现电路

溢出检测电路如图5所示: 9 / 16

溢出检测电路的实现规则: 设立一个二路选择器,当P=1时选择有符号数的运算,即如上图的溢出检测的结果为信号指示灯。 (1)P=1 有符号数的溢出检测原理:根据操作数和结果运算结果的符号位是否一致进行检测。因为只有两个同符号数相加时才会又可能产生溢出 设Xf,Yf未参加运算数的符号位,Sf为结果的符号位,V为溢出标志位,取V为1时表示发生溢出。 则可得实现溢出检测的逻辑表达式 V= XfYfSf̅+Xf̅Yf̅Sf

即取最高位的X Y 与S比较。

(2)P=0无符号数的溢出检测原理:根据最高位是否发生进位来判断。 即实现溢出检测的逻辑表达式: V= Cf

设计好溢出电路之后,按步骤2的图5连接好溢出检测电路,根据图6连

接好电路。