- 实验目的和要求
目的:了解模型机中各种寄存器结构、工作原理及其控制方法。
要求:利用CP226 实验系统上的K16..K23 开关做为DBUS 的数据,其它开关做为控制信号,将数据写入寄存器,数据寄存器组R0..R3,地址寄存器MAR,堆栈寄存器ST,输出寄存器OUT。
- 实验环境
Cp226 实验仪
- 实验内容与过程
【实验涉及的电路及原理】
实验1:R0,R1,R2,R3 寄存器实验
实验内容:
连接线表
连接 |
信号孔 |
接入孔 |
作用 |
状态说明 |
1 |
J1座 |
J3座 |
将K23-K16接入DBUS[7:0] |
实验模式:手动 |
2 |
RRD |
K11 |
寄存器组读使能 |
低电平有效 |
3 |
RWR |
K10 |
寄存器组写使能 |
低电平有效 |
4 |
SB |
K1 |
寄存器选择B |
|
5 |
SA |
K0 |
寄存器选择A |
|
6 |
CK |
已连 |
寄存器工作脉冲 |
上升沿打入 |
7 |
D7..D0 |
L7..L0 |
观察寄存器数据输出 |
将11H写入R0寄存器
二进制开关K23-K16用于DBUS[7:0]的数据输入,置数据AAH
K23 |
K22 |
K21 |
K20 |
K19 |
K18 |
K17 |
K16 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
1 |
置控制信号为:
K11(RRD) |
K10(RWR) |
K1(SB) |
K0(SA) |
1 |
0 |
0 |
0 |
按住STEP 脉冲键,CK 由高变低,这时寄存器R0 的黄色选择指示灯亮,表明选择R0 寄存器。放开STEP键,CK由低变高,产生一个上升沿,数据AAH 被写入R0 寄存器。
将29H写入R1寄存器
二进制开关K23-K16用于DBUS[7:0]的数据输入,置数据29H
K23 |
K22 |
K21 |
K20 |
K19 |
K18 |
K17 |
K16 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
置控制信号为:
K11(RRD) |
K10(RWR) |
K1(SB) |
K0(SA) |
1 |
0 |
0 |
1 |
按住STEP 脉冲键,CK 由高变低,这时寄存器R1 的黄色选择指示灯亮,表明
择R1 寄存器。放开STEP键,CK由低变高,产生一个上升沿,数据29H被写入R1 寄存器。
将63H写入R2寄存器
二进制开关K23-K16用于DBUS[7:0]的数据输入,置数据63H
K23 |
K22 |
K21 |
K20 |
K19 |
K18 |
K17 |
K16 |
0 |
1 |
1 |
0 |
0 |
0 |
0 |
0 |
置控制信号为:
K11(RRD) |
K10(RWR) |
K1(SB) |
K0(SA) |
1 |
0 |
1 |
0 |
按住STEP 脉冲键,CK 由高变低,这时寄存器R2 的黄色选择指示灯亮,表明选择R2 寄存器。放开STEP键,CK由低变高,产生一个上升沿,数据63H被写入R2 寄存器。
将44H写入R3寄存器
二进制开关K23-K16用于DBUS[7:0]的数据输入,置数据44H
K23 |
K22 |
K21 |
K20 |
K19 |
K18 |
K17 |
K16 |
0 |
1 |
1 |
1 |
0 |
0 |
0 |
0 |
置控制信号为:
K11(RRD) |
K10(RWR) |
K1(SB) |
K0(SA) |
1 |
0 |
1 |
1 |
按住STEP 脉冲键,CK 由高变低,这时寄存器R3 的黄色选择指示灯亮,表明选择R3 寄存器。放开STEP键,CK由低变高,产生一个上升沿,数据44H被写入R3 寄存器。
读R0寄存器
置控制信号为:
K11(RRD) |
K10(RWR) |
K1(SB) |
K0(SA) |
0 |
1 |
0 |
0 |
这时寄存器R0 的红色输出指示灯亮,R0 寄存器的数据送上数据总线。此时数据总线指示灯L7... L0为:00010001. 将K11(RRD)置为1,关闭R0 寄存器输出。
读R1寄存器
置控制信号为:
K11(RRD) |
K10(RWR) |
K1(SB) |
K0(SA) |
0 |
1 |
0 |
1 |
这时寄存器R1 的红色输出指示灯亮,R1 寄存器的数据送上数据总线。此时数据总线指示灯L7... L0为: 00100010. 将K11(RRD)置为1, 关闭R1 寄存器输出。
读R2寄存器
置控制信号为:
K11(RRD) |
K10(RWR) |
K1(SB) |
K0(SA) |
0 |
1 |
1 |
0 |
这时寄存器R2 的红色输出指示灯亮,R2 寄存器的数据送上数据总线。此时数据总线指示灯L7... L0为: 00110011. 将K11(RRD)置为1, 关闭R2 寄存器输出。
读R3寄存器
置控制信号为:
K11(RRD) |
K10(RWR) |
K1(SB) |
K0(SA) |
0 |
1 |
1 |
1 |
这时寄存器R3 的红色输出指示灯亮,R3 寄存器的数据送上数据总线。此时数据总线指示灯L7... L0为: 01000100. 将K11(RRD)置为1, 关闭R3 寄存器输出。
实验2:MAR 地址寄存器,ST 堆栈寄存器,OUT输出寄存器
寄存器MAR原理图
寄存器ST原理图
寄存器OUT原理图
连接线表
连接 |
信号孔 |
接入孔 |
作用 |
状态说明 |
1 |
J2座 |
J3座 |
将K23-16接入DBU[7:0] |
实验模式:手动 |
2 |
MAROE |
K14 |
MAR地址输出使能 |
低电平有效 |
3 |
MAREN |
K15 |
MAR寄存器写使能 |
低电平有效 |
4 |
STEN |
K12 |
ST寄存器写使能 |
低电平有效 |
5 |
OUTEN |
K13 |
OUT寄存器写使能 |
低电平有效 |
6 |
CK |
已连 |
寄存器工作脉冲 |
上升沿打入 |
将72H写入MAR寄存器
二进制开关K23-K16用于DBUS[7:0]的数据输入,置数据72H
K23 |
K22 |
K21 |
K20 |
K19 |
K18 |
K17 |
K16 |
0 |
1 |
1 |
1 |
0 |
0 |
1 |
0 |
置控制信号为:
K15(MAREN) |
K14(MAROE) |
K13(OUTEN) |
K12(STEN) |
0 |
0 |
1 |
1 |
按住STEP脉冲键,CK由高变低,这时寄存器MAR的黄色选择指示灯亮,表明选择MAR寄存器。放开STEP键,CK由低变高,产生一个上升沿,数据72H被写入MAR寄存器。
K14(MAROE)为0, MAR寄存器中的地址输出,MAR 红色输出指示灯亮。
将K14(MAROE)置为1,关闭MAR输出。
将34H写入ST寄器
二进制开关K23-K16用于DBUS[7:0]的数据输入,置数据34H
K23 |
K22 |
K21 |
K20 |
K19 |
K18 |
K17 |
K16 |
0 |
0 |
1 |
1 |
0 |
1 |
0 |
0 |
置控制信号为:
K15(MAREN) |
K14(MAROE) |
K13(OUTEN) |
K12(STEN) |
1 |
1 |
1 |
0 |
按住STEP 脉冲键,CK 由高变低,这时寄存器ST 的黄色选择指示灯亮,表明选择ST 寄存器。放开STEP键,CK由低变高,产生一个上升沿,数据34H被写入ST 寄存器。
将56H写入OUT寄存器
二进制开关K23-K16用于DBUS[7:0]的数据输入,置数据56H
K23 |
K22 |
K21 |
K20 |
K19 |
K18 |
K17 |
K16 |
0 |
1 |
0 |
1 |
0 |
1 |
1 |
0 |
置控制信号为:
K15(MAREN) |
K14(MAROE) |
K13(OUTEN) |
K12(STEN) |
1 |
1 |
0 |
1 |
按住STEP 脉冲键,CK 由高变低,这时寄存器OUT 的黄色选择指示灯亮,表明选择OUT 寄存器。放开STEP 键,CK 由低变高,产生一个上升沿,数据56H 被写入OUT寄存器。
- 实验结果与分析
1.将19H写入R0寄存器。
K23 |
K22 |
K21 |
K20 |
K19 |
K18 |
K17 |
K16 |
K11(RRD) |
K10(RWR) |
K1(SB) |
K0(SA) |
0 |
0 |
0 |
1 |
1 |
0 |
0 |
1 |
1 |
0 |
0 |
0 |
置控制信号为:
K11(RRD) |
K10(RWR) |
K1(SB) |
K0(SA) |
1 |
0 |
0 |
0 |
2.将29H写入R1寄存器。
K23 |
K22 |
K21 |
K20 |
K19 |
K18 |
K17 |
K16 |
K11(RRD) |
K10(RWR) |
K1(SB) |
K0(SA) |
0 |
0 |
1 |
0 |
1 |
0 |
0 |
1 |
1 |
0 |
1 |
0 |
置控制信号为:
K11(RRD) |
K10(RWR) |
K1(SB) |
K0(SA) |
1 |
0 |
0 |
1 |
3.将39H写入R2寄存器。
K23 |
K22 |
K21 |
K20 |
K19 |
K18 |
K17 |
K16 |
K11(RRD) |
K10(RWR) |
K1(SB) |
K0(SA) |
0 |
0 |
1 |
1 |
1 |
0 |
0 |
1 |
1 |
0 |
1 |
0 |
置控制信号为:
K11(RRD) |
K10(RWR) |
K1(SB) |
K0(SA) |
1 |
0 |
1 |
0 |
4.将49H写入R3寄存器。
K23 |
K22 |
K21 |
K20 |
K19 |
K18 |
K17 |
K16 |
K11(RRD) |
K10(RWR) |
K1(SB) |
K0(SA) |
0 |
1 |
0 |
0 |
1 |
0 |
0 |
1 |
1 |
0 |
1 |
1 |
置控制信号为:
K11(RRD) |
K10(RWR) |
K1(SB) |
K0(SA) |
1 |
0 |
1 |
1 |
5.按住STEP脉冲键实验现象? (实验箱中有什么变化)
按住STEP 脉冲键,CK 由高变低,这时寄存器R1 的黄色选择指示灯亮,表明选择R1 寄存器。
6.放开STEP 键实验现象? (实验箱中有什么变化)
放开STEP键,CK由低变高,产生一个上升沿,数据29H被写入R1 寄存器。
7.数据是在什么时候被打入寄存器的?
在按下STEP键后。
8.R0,R1,R2,R3能同时输入数据吗?
可以同时向R0,R1,R2和R3寄存器输入数据。要实现同时输入数据到这些寄存器,要确保对于每个寄存器,只有对应的控制信号(如R0EN、R1EN、R2EN、R3EN)为有效状态(例如置1),其他寄存器的控制信号为无效状态(例如置0)。
9. MAR, ST, OUT能同时输入数据吗?你试一试。
可以同时向MAR、ST和OUT寄存器输入数据。每个寄存器都有独立的数据输入线(如DBUS[7:0]),可以使用二进制开关或其他方式为每个寄存器设置不同的数据值。
在写入数据之前,将相应的控制信号设置为正确的状态,并按需要选择要写入的寄存器。例如,对于MAR寄存器,控制信号K12(STEN)和K13(OUTEN)应该为0,而对于ST寄存器,K12(STEN)应为1,K13(OUTEN)应为0。