实验二 通用寄存器实验
简介:各种计算机的CPU可能有所不同,但是在CPU中至少有六类寄存器:指令寄存器(IR)、程序计数器(PC)、数据地址寄存器(AR)、数据缓冲寄存器(DR)、通用寄存器(R0~R3)、状态字寄存器(PSW)。各类寄存器在CPU内都有各自不同的功能。
一、实验目的
1、熟悉通用寄存器概念。
2、熟悉通用寄存器的组成和硬件电路。
二、实验要求
完成3个通用寄存器的数据写入与读出,并利用运算器完成R0,R1,R2三个寄存器的求和运算。
三、实验原理
实验中所用的通用寄存器数据通路(如图2-1)所示。由三片8位字长的通用寄存器(74LS374)组成R0、R1、R2组成。三个寄存器的输入端D0~D7连至BUS总线接口,而三个寄存器的输出端连至BUS总线接口,R0、R1、R2经CBA二进制控制开关译码产生数据输出选通信号R0-BUS、R1-BUS、R2-BUS(详见表2.1);LDR0、LDR1、LDR2为数据写入允许信号,由二进制控制开关(如图2.3)模拟,均为高电平有效,拨动相应的拨码开关到对应状态即可完成操作。
图2.1通用寄存器单元电路图
图2.2缓冲输入区
图2.3 二进制开关单元
表2.1 通用寄存器单元选通真值表
C B A 选择
1 0 0 R0-BUS
1 0 1 R1-BUS
1 1 0 R2-BUS
四、实验内容
1、通用寄存器的写入
拨动二进制数据开关向R0、 R1、R2寄存器分别置数,数据分别为11H、12H、13H
2、通用寄存器的读出
二进制控制开关CBA通过74LS138译码输出R0、R1、R2数据读出到数据总线(选通真值表见表2.1),并验证结果。
控制开关 输出值
CBA=100 11
CBA=101 12
CBA=110 13
3、利用寄存器和运算器计算F=A加B加C,运算结果输出到总线,(其中A、B、C、的值分别为寄存器R0、R1、R2中存放的数据)通过总线数据传输完成实验项目(要求详细列出各实验步骤中开关状态和完成的功能,并记录运算结果)。
1.通过DSW1将11H 12H 13H分别送到R0 R1 R2
2.先运算F=A+B
R0→BUS(CBA=100,R0-BUS) BUS→DR1(LDDR1=1,T4)
R1→BUS(CBA=101,R1-BUS) BUS→DR2(LDDR2=1,T4)
DR1+DR2→BUS→R0
第一步:M=0,CN=1,S3-S0=1001
第二步:CBA=010,ALU-BUS
第三步:LDR0=1,T4
3.现在A+B的和在R0中,现在运算F=(A+B)+C
R0→BUS(CBA=100,R0-BUS) BUS→DR1(LDDR1=1,T4)
R3→BUS(CBA=110,R3-BUS) BUS→DR3(LDDR3=1,T4)
DR1+DR2 M=0,CN=1,S3-S0=1001
2.4运算器通用寄存器电路
五、实验思考
实验内容3中,A和B的和能否直接存入DR1而不存入R0,如果能,该怎么操作
能直接放入R0
DR1+DR2→BUS→DR1
1.M=0,CN=1,S3-S0=1001
2. CBA=010,ALU-BUS
3.LDDR1=1,T4,S3-S0=0000