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

如果需要配套工程资源文件,点击专栏简介联系作者:

计算机组成原理【专栏】

须知

本文仅作学习笔记使用,仅在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. 其次还是要请大家能够多多指出问题,我也会在评论区等候大家!
    在这里插入图片描述 .
评论 14
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值