实验(二):存储器实验

一、实验内容与目的

        实验要求:

        利用 CP226 实验仪上的 K16..K23 开关做为 DBUS 的数据,其它开关做为控制信号,实现主存储器 EM 的读写操作;利用 CP226 实验仪上的小键盘将程序输入主存储器 EM,实现程序的自动运行。

        实验目的:

        了解模型机中程序存储器 EM 的工作原理及控制方法;掌握模型机存储程序的基本原理以及模型机执行程序的过程。

二、实验步骤

2.1 实验一:主存储器 EM 读写实验

连接 信号孔 接入孔 作用 状态说明
1 PCOE

实验者

自定义

连接到

16 个

拨动开关

K15~K0

的任何

一个

PC 输出地址使能 低电平有效
2 MAROE -- MAR 输出地址使能 低电平有效
3 MAREN MAR 写使能 低电平有效
4 EMEN 存储器使能信号 低电平有效
5 EMRD 存储器读信号 低电平有效
6 EMWR 存储器写信号 低电平有效
7 X0 寄存器输出选择 见 2.4 表格
8 X1 寄存器输出选择
9 X2 寄存器输出选择
10 AEN A 寄存器写使能 低电平有效

本模型机中,指令寻址时,由 PC 给出地址访问主存储器 EM,数据寻址时,由 MAR给出地址访问主存储器 EM,不允许 PC 和 MAR 同时输出地址。

(1)主存储器 EM 写入数据

存储器的写入数据的步骤描述如下:

第一步:将数据地址送 MAR,MAR 输出地址驱动地址总线指示内存写入单元。

第二步:存储器控制信号有效,包括使能信号和写信号。

第三步:将指定部件的数据输出至数据总线。

第四步:数据总线的数据写入地址总线指定的内存单元。

下面的操作将数据开关 K23~K16 送出的数据 55H 送入存储器的 10H 单元。

将地址 10H 写入 MAR

二进制开关 K23-K16 数据 10H,为MAR 送数据地址。

K23 K22 K21 K20 K19 K18 K17 K16
0 0 0 1 0 0 0 0

置控制信号为(未给出的控制信号置为“1”):

X2 X1 X0 MAREN
0 0 0 0

按住 STEP 脉冲键,按键按下时,输入端口 IN 的红色选择指示灯亮,表明数据源端是 IN,主存地址寄存器 MAR 的黄色选择指示灯亮,表明选择 MAR 寄存器。放开 STEP 键,电路产生一个上升沿,数据地址 10H 被写入 MAR 寄存器。

注意:一次操作完成后,所有的控制信号复位至无效状态“1”。

将数据 55H 写入 EM[10H]

置控制信号为:

X2 X1 X0 MAROE EMEN EMWR
0 0 0 0 0 0

二进制开关 K23-K16 数据 55H,通过输入端口 IN 送数据总线。

K23 K22 K21 K20 K19 K18 K17 K16
0 1 0 1 0 1 0 1

按 STEP 键, 将数据 55H 写入 EM[10H]。此时 MAR 寄存器数码管显示 10H,主存储器 EM 的数码管显示 55H。当控制信号复位之后,主存储器 EM 的数码管显示 FFH,此时数据已经存入指定主存单元,由于没有地址和存储器的控制信号,数码管不再显示数据。

(2)主存储器 EM 读出数据

存储器的读出数据的步骤描述如下:

第一步:将数据地址送 MAR,MAR 输出地址驱动地址总线指示内存读出单元。

第二步:存储器控制信号有效,包括使能信号和读信号。

第三步:指定部件的数据作为数据的接收端。

第四步:内存数据读出到数据总线写入指定部件。

下面的操作将存储器的 10H 单元的数据 55H 读出送到累加器 A。

将地址 10H 写入 MAR

二进制开关 K23-K16 数据 10H,为MAR 送数据地址。

K23 K22 K21 K20 K19 K18 K17 K16
0 0 0 1 0 0 0 0

置控制信号为(未给出的控制信号置为“1”):

X2 X1 X0 MAREN
0 0 0 0

按住 STEP 脉冲键,数据地址 10H 被写入 MAR 寄存器。

将 EM[10H]的数据 55H 读出到累加器 A

置控制信号为:

MAROE EMEN EMRD AEN
0 0 0 0

按住 STEP 脉冲键,EM[10H]的数据 55H 读出到累加器 A。

实验习题

将两位实验者学号的最后两位写入分别主存储器 EM 的 10H 和 11H 单元,读出到 A寄存器和 W 寄存器(注意学号本身是 10 进制)。

三、实验过程分析

2.1 实验一

(1)主存储器 EM 写入数据

将地址 10H 写入 MAR,如图1所示。

图1 将地址 10H 写入 MAR

将数据 55H 写入 EM[10H] ,如图2、图3所示。

图2 数据 55H 写入 EM

图3 控制信号复位之后

2)主存储器 EM 读出数据

将地址 10H 写入 MAR,如图4所示。

4 将地址 10H 写入 MAR

将 EM[10H]的数据 55H 读出到累加器 A,如图5所示。

图5 读出到累加器 A

实验习题

将两位实验者学号的最后两位写入分别主存储器 EM 的 10H 和 11H 单元,读出到 A寄存器和 W 寄存器(注意学号本身是 10 进制),如图6所示。

图5 读出到累加器 A

四、实验总结

本次实验是一次非常有意义的实践学习,通过实验,我对计算机组成原理和计算机系统设计有了更深入的认识,同时也提高了自己的实践能力和问题解决能力。

在实验过程中,我首先需要正确连接实验仪器,设置控制信号,输入程序,进行读写操作和程序运行。这需要我认真阅读实验指导书,仔细理解实验要求和步骤,并按照要求逐步操作。在实验中,我发现一些问题,例如在设置控制信号时出现了错误,导致读写操作失败。通过仔细检查,我发现错误的原因,并及时予以纠正,最终成功完成实验。

通过实验,我深入了解了计算机系统的组成和工作原理,掌握了模型机存储程序的基本原理和控制方法,提高了计算机系统设计和编程能力。同时,我也意识到了实践操作的重要性,只有通过实践才能真正理解和掌握理论知识,只有不断实践才能提高自己的实践能力和问题解决能力。在实验中,我不仅需要按照指导书上的步骤进行实验,同时也需要理解实验的原理和意义,从而更好地掌握实验内容和方法。

最后,本次实验让我充分认识到了计算机系统的复杂性和重要性,了解到计算机系统中各个组成部分之间的相互作用和控制方法,也提高了我对计算机系统设计和编程的兴趣。我相信,在今后的学习和实践中,我会不断加强自己的能力,深入学习计算机系统的各个方面,探索计算机科学和技术的更多领域。

猜你喜欢

转载自blog.csdn.net/qq_61228493/article/details/134485320