计算机组成原理——运算器实验

计算机组成原理实验—运算器

预习内容:

1.逻辑运算
⑴逻辑非运算:按位求它的反,常用变量上加一横表示
⑵逻辑加运算:按位求它们的“或”,常用“+”来表示
⑶逻辑乘运算:按位求它们的“与”,常用“.”来表示
⑷逻辑异运算:按位求它们的模2和,常用“⊕”来表示
2.多功能算术/逻辑运算单元
⑴基本思想:Si=Ai⊕Bi⊕Ci
Ci+1=AiBi+BiCi+CiAi
⑵逻辑表达式
⑶算术逻辑运算的实现:①算术操作②逻辑操作
⑷两级先行进位的ALU :①成组进位发生输出②成组进位传送输出

实验目的与要求(及主要实验仪器、设备):

1.掌握算术逻辑运算单元的工作原理。
2.熟悉简单运算器的电路组成。
3.熟悉 4 位运算功能发生器(74LS181)的算术、逻辑运算功能。

实验要求

1.做好实验预习,复习全加器的原理,掌握实验元器件的功能特性。
2.按照实验内容与步骤的要求,独立思考,认真仔细地完成实验。
本次实验采用的主要设备:自带电脑

实验原理(方法与与原理分析):

1.两片74LS181 芯片以并/串形式构成的8位字长的运算器。右方为低4位运算芯片,左方为高4位运算芯片。低位芯片的进位输出端Cn+4与高位芯片的进位输入端Cn相连,使低4位运算产生的进位送进高4位。低位芯片的进位输入端Cn可与外来进位相连,高位芯片的进位输出外部。
2.为控制运算器向内总线上输出运算结果,在其输出端连接了一个三态门(用74LS245实现) 。 若要将运算结果输出到总线上,则要将三态74LS245 的控制端ALU-B 置低电平。否则输出高阻态。数据输入单元(实验板上印INPUT DEVICE)用以给出参与运算的数据。其中,输入开关经过一个三态门(74LS245) 和内总线相连,该三态门的控制信号为SW-B,取低电平时,开关上的数据则通过三态门而送入内总线中。总线数据显示灯(BUS UNIT 单元中)已与内总线相连,用来显示内总线上的数据。控制信号中除T4为脉冲信号,其它均为电平信号。由于实验电路中的时序信号均已连至“W/R UNIT”单元中的相应时序信号引出端,因此,需要将“W/R UNIT”单元中的T4 接“STATE UNIT”单元中的微动开关 KK2 的输出端。 在进行实验时,按动微动开关,即可获得实验所需的单脉冲。
3.运算器实验电路如图 2.1 所示。两片 4 位的 74LS181 构成了 8 位字长的 ALU。两个 8 位的 74LS273 作为工作寄存器 DR1 和 DR2,用于暂存参与运算的操作数。参与运算的数据由数据开关通过三态门 74LS245 送入工作寄存器,ALU 的运算结果也通过三态门74LS245 发送到数据显示灯上。
4.参与运算的操作数由 SW7~SW0 共 8 个二进制开关来设置,当SW − BUS=0 时,数据通过三态门 74LS245 输出到 DR1 和DR2。DR1 接ALU 的 A 输入端口,DR2 接 ALU 的 B 输入端口。在 P1 的上升沿将数据打入 DR1,送至 74LS181 的 A 输入端口;在 P2 的上升沿将数据打入 DR2,送至 74LS181 的 B 输入端口。
5.LU 由两片 74LS181 构成,其中 74LS181(1)做低 4 位算术逻辑运算,74LS181(2)做高4 位算术逻辑运算,74LS181(1)的进位输出信号 Cn+4 与 74LS181(2)的进位输入信号 Cn 相连,两片 74LS181 的控制信号 S3~S0、M 分别相连。运算结果通过一个三态门 74LS245 输出到数据显示灯上。另外,74LS181(2)的进位输出信号 Cn+4 可另接一个指示灯,用于显示运算器进位标志信号状态。

实验步骤(程序代码与实验过程):

在这里插入图片描述

1)ALU-BUS=0,打开ALU输出端的三态门;
2)设置 Cn=1,ALU 无进位输入;
3)将S3、S2、S1、SO、M 置为 00000,指示灯应显示DR1中
数据00111101;
4) 将S3、S2、S1、SO、M 置为10101,指示灯应显示DR2中
数据10100111。

实验结果(数据分析与结论):

1.验证 74LS181 的算术运算和逻辑运算功能(采用正逻辑)。在给定 DR1=65H,DR2=A7H 的情况下,改变运算器的功能模式,观察运算器的输出,并填入表 2-1,并和理论值进行比较、验证。
表 2-1 运算器功能验证
工作模式选择
S3 S2 S1 S0 算术运算(M=0)(Cn=1 无进位) 逻辑运算(M=1)
功能 输出值 功能 输出值
0000 A 00111101 —
AEAE 11000010
0001 A+B 01111101 ——————
AE A EAAE + EAAE B E 10000010
0010 —
A+AEBE 10111111 —
AEAEAB 01000000
0011 0 minus 1 11111111 Logical 0 00000000
0100 —
A plus AAEBE 01111101 ————
AE AEAAE BE 11001010
0101 —
(A+B) plus AAEBE 10000101 —
AEBE 10001010
0110 A minus B minus 1 11000111 A⊕B 01001000
0111 —
AABE EA minus 1 00000111 —
AAEBE 00001000
1000 A plus AB 00110010 —
AEAEA+B 11110111
1001 A plus B 10110010 ——————
AE AEAAE ⊕EAAE BE 10110111
1010 —
(A+ABE EA) plus AB 11110100 B 01110101
1011 AB minus 1 00110100 AB 00110101
1100 A plus A 01111010 Logical 1 11111111
1101 (A+B) plus A 10111010 —
A+AEBE 10111111
1110 —
(A+ABE A)E plus A I1111100 A+B 01111101
1111 A minus 1 00111100 A 00111101
注意:A 和B 分别表示参与运算的两个数,“+”表示逻辑或,“plus”表示算术求和。

问题讨论:

问:
1.运算器主要由哪些器件组成?这些器件是怎样连接的?
答:运算器由算术逻辑单元(ALU)、累加器、状态寄存器、通用寄存器组等组成。
在这里插入图片描述

2.芯片 74LS181 没有减法:A minus B 的指令,怎样实现减法功能?
答:在减法运算时,可用减法取反码运算后用加法器实现。
3.74LS181 有哪两种级联方法?分别要用到哪些引脚?哪一种速度更快?
答;1.第一种是单级先行进位的ALU用四片74181构成的16位行波进位的ALU,第二种为两级先行进位的ALU,分别是用四片74181构成的16位行波进位的ALU和用四片74181和一片74182构成的16位并行ALU,第二种速度更快。

  • 61
    点赞
  • 329
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

轩辕椿

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值