1、熟悉双端口通用寄存器组的读写操作。
2、熟悉运算器的数据传送通路。
3、验证运算器74LS181的算术逻辑功能。
4、按给定数据,完成指定的算术、逻辑运算。
1、做好实验预习。掌握运算器的数据传送通路和ALU的功能特性,并熟悉本实验中所用的控制台开关的作用和使用方法。
2、认真细致完成实验,根据实验结果填写实验一表1、实验一表2。
3、写出实验报告,分析实验结果并简述心得体会。
1、开电源前接线。
参考接线表:
存储器 |
DRW |
SBUS |
ABUS |
MBUS |
LDC |
LDZ |
CIN |
电平开关 |
K4 |
K5 |
K6 |
K7 |
K8 |
K9 |
K10 |
运算器 |
RD0 |
RD1 |
RS0 |
RS1 |
S0 |
S1 |
S2 |
S3 |
M |
电平开关 |
K0 |
K1 |
K2 |
K3 |
K11 |
K12 |
K13 |
K14 |
K15 |
完成实验任务前两项只需K0-K7,此时K8-K15的状态不影响实验结果。
2、打开电源,将控制转换区开关拨到中间位置,即“独立”,此时黄灯亮。将微程序控制器区中编程开关拨到下方,即“正常”。
3、设置操作模式:DP和SW开关为“1100”,即单步,写寄存器方式。将SBUS,DRW拨至1;ABUS,MBUS拨至0。再将数据开关拨至34H;RD0,RD1拨至00。按下QD,即把34H写入寄存器R0中。再将21H、52H、65H写入R1、R2、R3中。
4、将ABUS,MBUS,SBUS,DRW都拨成0。再将RD0,RD1拨至00;RS0,RS1拨至11,此时指示灯A7~A0显示的是ALU的A端口的数(R0存的数),指示灯B7~B0显示的是ALU的B端口的数(R3存的数)。再用A、B端口分别读出其他寄存器中的值。
5、设置操作模式:DP和SW为“1101”,含义为单步,运算器实验。用前面的方法输入数据至寄存器中,令R0=55H,R1=AAH。再将CIN,LDC,LDZ,ABUS ,RS0拨成1;RD1,RD0,RS1,MBUS,SBUS,DRW拨成0。再根据74LS181运算功能表,调整S3~S0与M的值来进行运算,每次运算按下QD后在指示灯D7~D0上观察运算结果并通过C、Z指示灯来观察是否进位与是否结果为0。
说明:M=0为算术运算,M=1为逻辑运算;S3~S0为运算功能;CIN为1,正逻辑;ABUS=1允许运算结果送数据总线;LDC、LDZ为1,允许保存结果状态;RD1、RD0用00选择R0;RS1、RS0用01选择R1;(DRW、SBUS、MBUS命令为0)。
1、通过8个二进制数据开关SD7~SD0来输入数据,当控制信号SBUS为1时,数据开关上的数被送到数据总线上。注意SD7为高位,SD0为低位。
2、运算器中的双端口寄存器组有4个8位的寄存器R0、R1、R2、R3。当把数据总线上的值送往寄存器或把寄存器中的值送往ALU的A端口时,通过地址信号RD1、RD0来选中输入或输出数值的寄存器。当把值送往ALU的B端口时,通过地址信号RS1、RS0选中输出数值的寄存器。(地址信号RD1、RD0与RS1、RS0都是取值为00时选中寄存器R0,01时选中R1,10时选中R2,11时选中R3)
3、写入数据到寄存器需要命令DRW,且需要在时钟T3的上升沿写入。故写入数据到寄存器需要DRW为1,并按下QD来给出一组节拍脉冲信号T1~T3。
4、把寄存器中的数据送往ALU的A端口、B端口时无需控制信号,ALU的A端口、B端口的值可通过指示灯A7~A0、B7~B0来查看。
5、ALU运算功能通过控制信号M、S3~S0控制,M用于区分算术运算还是逻辑运算,S3~S0选择具体的运算功能。具体内容可查阅本实验后面给出的74LS181运算功能表。
6、CIN是提供给ALU的最低位进位信号,CIN取1表示最低位无进位。运算产生进位标志C和结果为0标志Z,控制命令LDC和LDZ取1时,把相应标志的状态保存进状态触发器中。
7、ALU的运算结果要送往数据总线DBUS,需要控制命令ABUS取1。送到数据总线DBUS上的值可通过指示灯D7~D0来查看。注意SBUS和ABUS不能同时为1。
8. 注意SBUS,ABUS,MBUS同时只能有一个为1,故本实验虽然没有用到MBUS信号,但也必须接MBUS到电平开关,使MBUS恒取0。
本实验线路与信号原理图如下:
本实验用到的信号归纳如下:
序号 |
信号名 |
功能说明 |
1 |
S3、S2、S1、S0 |
控制74LS181的运算类型 |
2 |
CIN |
低位74LS181的进位输入,取1时无进位 |
3 |
SEL3、SEL2(RD1、RD0) |
选择送ALU的A端口的寄存器与写入的寄存器 |
4 |
SEL1、SEL0(RS1、RS0) |
选择送ALU的B端口的寄存器 |
5 |
DRW |
=1时,在T3上升沿对RD1、RD0选中的寄存器进行写操作,将数据总线DBUS上的数D7~D0写入选定的寄存器 |
6 |
SBUS |
=1时,将数据开关的值送数据总线DBUS =0时,禁止数据开关的值送数据总线DBUS |
7 |
ABUS |
=1时,将运算结果送数据总线DBUS =0时,禁止运算结果送数据总线DBUS |
8 |
M |
运算模式:M=0为算术运算;M=1逻辑运算; |
9 |
LDZ |
=1时,如果运算结果为0,在T3的上升沿,将1写入到Z标志寄存器;如果运算结果不为0,将0保存到Z标志寄存器。 |
10 |
LDC |
=1时,在T3的上升沿将运算得到的进位保存到C标志寄存器。 |
11 |
指示灯A7~A0 |
显示送往ALU的A端口的数 |
12 |
指示灯B7~B0 |
显示送往ALU的B端口的数 |
13 |
指示灯D7~D0 |
显示数据总线DBUS上的数 |
14 |
C |
进位标志 |
15 |
Z |
结果为0标志 |
表1:将34H、21H、52H、65H分别写入通用寄存器R0-R3;再读出R0-R3的内容
表2:控制转换开关拨到独立位置;编程开关拨到正常位置;
1)操作模式:1100。按表1所学,向R0写入0AAH,向R1写入55H;
2)操作模式:1101。ABUS=1;LDC、LDZ为1;RD1、RD0为00选择R0;RS1、RS0用01选择R1;DRW、SBUS、MBUS为0;其余如下表。验证运算器的算术运算和逻辑运算功能。
实验报告:【免费】计算机组成原理-运算器组成实验资源-CSDN文库