计算机组成原理学习-实验三 存储器实验(详细、系统)

如果你对其他计算机组成原理的知识感兴趣,请考虑阅读我的专栏

计算机组成原理【专栏】

须知

本文仅作学习笔记使用,仅在CSDN网站发布,如果在其他网站发现,均为侵权行为,请举报。作者:小王在努力。

实验要求

 基本要求

  1. 理解计算机存储子系统

  2. 使用功能等效电路设计并验证静态随机访问存储器芯片

  3. 设计并验证计算机内存的组成与功能(含ROM和RAM)

 扩展要求

  1. 分别用IO内存统一和独立编址增加4K的IO地址(扩展)

  2. 实现CPU接口DR寄存器(扩展)

 思考问题

 思考计算机系统IO和存储的工作效率怎样最大化

实验步骤

 一、理论分析

 基本要求:由于实验用验证静态随机访问存储器芯片,所以选用6116来作为存储器芯片,我们用74LS373来充当MAR以及MDR,以此来设计实验。

 扩展要求:由于要实现IO内存的统一编址和独立编址,要求为4K,独立编址:采用两个芯片,6116充当主存单元,6264充当IO地址。统一编址:采用一个6264充当主存芯片,将主存和IO进行统一编址。其中6116的功能表:

/CE /OE /WE 方式 D0-D7
H X X 未选中 高阻
L L H Dout
L H L Din
L L L Din

 二、实现方法

  1. 基本要求

 由于实验用验证静态随机访问存储器芯片,其实本质上就是模拟在主存中存储数据的过程,而在主存中存储数据分为两大步:1.选中对应地址的主存单元。2.将数据写入主存中。

 现在将这两步细分,首先给出地址,地址通过高低电平给出,打开74LS245的开关,将地址运送到总线上,此时,由编号为U3的74LS373来充当MAR(也就是地址寄存器,保存地址用的),我们将总线的地址写入到MAR中,然后让其读出到模拟主存的6116的地址端。此时已经完成了第一大步,选中对应地址的主存单元。然后我们还是通过高低电平给出想要的存储的数据,打开74LS245,将要保存的数据放到总线上,然后打开编号为U5的74LS245的开关,让保存的数据从总线上通过U5到达模拟主存的6116的数据端,此时我们使用6116的写入功能,就可以将要保存的数据保存在之前选中的地址单元中 了。

 由于扩展要求实现MDR(存储数据的寄存器)的功能,所以我们用U6来充当MDR,只需将6116的读出的数据保存在MDR中,并输出即可。
在这里插入图片描述

  1. 扩展要求:

 独立编址:

 将主存和IO分开进行编址,核心为编制位数不同,用6116的8位地址作为主存地址,范围为0000 0000-1111 1111,用6264的12位地址作为4K的IO地址,范围为0000 0000 0000-1111 1111 1111,其中IO开关做片选信号,高电平时,代表输入的地址为12位,打开U474Ls245(使得后四位地址也能输入到总线上),关闭主存6116,选中6264;低电平时,代表输入的地址为8位,关闭U474LS245(使得只能有8位地址输入到总线上),选中6116。
在这里插入图片描述

 统一编址:

 将主存和IO设备进行统一编址,总共用到了13位地址线,其中IO的存储地址范围为:0
0000 0000 0000-0 1111 1111 1111,而,主存的存储范围为:1 0000 0000 0000-1 1111 1111 1111
在这里插入图片描述

 三、实验结果分析

 我们在低位为0000 0110的主存单元内写入一个英文字母W,W的ASCII为0101 0111。
 1. MAR写入地址:
在这里插入图片描述
 2. 给6116对应地址写入W的ASCII值(0101 0111)
在这里插入图片描述
 3. 读出6116的数据(W的ASCII)并写入到MDR中:
在这里插入图片描述
 4. 读出MDR中存储的数据W的ASCII:
在这里插入图片描述

 独立编址,给出地址1111 0110,位数为8位,为主存地址,选中6116的主存单元:
在这里插入图片描述

 独立编址,给出地址1111 0000 0110,位数为12位,为IO端口地址,选中6264的IO端口地址:
在这里插入图片描述 统一编址,选中地址为0 0000 0000 0110的IO端口地址:
在这里插入图片描述

 统一编址,选中地址为1 0000 0000 0110 的主存地址:
在这里插入图片描述

 四、思考问题

 可以用高速缓冲机制,多体交叉,多通道技术来提高效率。

 五、问题及解决办法

 问题:如何在proteus里面寻找SRAM、DRAM、ROM等存储器原件。
 解决办法:
 1. 在选中元器件中,选中Memory ICs,查看其子类别。
在这里插入图片描述
 2.子类中含有ROM、SRAM、DRAM等。
在这里插入图片描述
 3.其中的元器件不一定都能用,标识为:Schematic Model表示能够使用,标识为No Simulator Model则表示不能使用(别问为啥要写这个,问就是博主拿了一个不能用的测试了半天,报错了,半天还不知道哪里错了〒▽〒)。
在这里插入图片描述
在这里插入图片描述

 六、结论

 通过此次学习,我了解了6管SRAM的结构的同时,也了解的计算机内部存储器的工作过程,学会了如何在元器件库中寻找ROM、DRAM、SRAM等元器件,使用6116来模拟主存进行存储数据,了解了IO的独立编址和统一编址,并了解了如何提高IO和存储器的工作效率。

后话

  1. 首先给大家说一下,博主经常在线,如果有什么问题或者想法,可以在下方评论,我会积极反馈的。
  2. 其次还是要请大家能够多多指出问题,我也会在评论区等候大家!
    在这里插入图片描述 .

猜你喜欢

转载自blog.csdn.net/vangoudan/article/details/106767597