【408】【计算机组成原理】03 存储系统(上)

本章是这本书最难的几个点,一定要下功夫理解!否则容易在做考研大题时得很低的分数。

王道第三章

在这个章节中,和cache相关的知识选择大题都考过,基本上是大题。其余的细碎知识点基本上都是选择题,虚拟存储器可以留到操作系统学习(基本上虚拟存储和机组联合起来考察,一般都是比较难的题目)。

一、存储器

这一部分没啥考点,简单看看王道书里的概念因为有可能直接考概念默写或者选择题直接选择书上原文。注意一下RAM与ROM的区分,以及ROM虽然叫只读但是也能写入(这个是历史原因)。

1.存储器性能指标

这部分概念要熟稔于心,考试十分灵活。

1.存储容量:表示为A*B的形式,要注意单位!如512*8bit 与512*1B所表示的存储容量都是512B。B一般为机器存储字长,看好题目给的条件。

2.存取周期:对于破坏性读出的存储器,如 RAM,存期周期包含存取时间与恢复时间(一定要记得有恢复时间,题目里可能作为隐含条件!),注意下恢复时间要比存取时间大得多就行了。

王道书中在这个章节有很多关于存取周期与存储容量的习题,做一做基本就有感觉了,套路比较明显,在考研中算是简单题。

2.多层次存储系统

这种金字塔的形式的目的说白了就是为了让大家都能忙碌起来,不要有人在等别人。把王道的图看看就行。提个醒:cache里的内容是内存的副本!

3.内存

内存一般是DRAM,内部cache是SRAM,考试考过DRAM与SRAM的区别,这个简单看看王道书即可。SRAM是非破坏性读取,DRAM是破坏性读取(因此有恢复时间)。DRAM的刷新(恢复)比较特殊,可以把刷新看作是特殊的读操作,每当刷新时就要占用整个存储体(存储器包含多个存储体)。为了减少因为占用导致的死区时间 提出了分散刷新(不存在死去时间)、异步刷新。

对于DRAM而言还有个选择题的考点,就是在考研中题目一旦涉及到了DRAM就默认采用地址复用的技术,也就是说地址线减半。这部分的习题涉及到 1.给定一个存储容量让你求解地址线、数据线的个数。2.DRAM的地址线个数(注意地址复用)。3.给定一个芯片的相关数据让你判断所需的引脚个数。这些内容全在王道的书后题目中,数与考研的简单题。

4.ROM

ROM包含MROM、PROM、EPROM、FLASH、SSD这些,考研有可能直接考基本概念。SSD是新增考点注意一下概念即可。

5.内存与CPU如何交换数据

通过MAR、MDR与CU(控制单元)实现内存与CPU的数据交换。这部分内容在后面五段式流水线中会更进一步学习。内存里的数据会被最小编址单位(一般是字节,不过有时会恶心人故意让字作为最小编址单位,注意审题)划分为一个一个的数据单元,每个数据单元都有一个地址(但是一旦用了边界对齐就不需要,只需要每一个边界的开头有一个地址即可,有一年选择题考察了这个,相信等你做到那个题目就知道我在说啥了)。

在读数据的时候,cpu会将要读取的数据的地址放在MAR中,同时控制CU向内存发出READ读命令,内存会去查找这个地址,将这个地址对应的相应内容放入MDR中(MDR<---Mem[MAR],在后面五段式流水线会经常用这种形式表示数据的流向)。

在写数据时,cpu将数据先放如MDR中,将要写入的地址放入MAR中,再控制CU发出写命令(Mem[MAR]<---MDR)。

注意这里提到的读与写都不考虑cache,如果一旦考虑cache情况会不一样,读操作不一定要去访问内存,因为数据有可能就在cache中,写操作先写cache再写内存(这里指的是回写法与直写法,两种方式都需要先修改cache,但是写回内存的时机却不相同)。

二、多模块存储器

一个存储体不带劲,也没啥用,拆开内存条可以看到上面其实有很多的存储体,那么如何实现不冲突的访问各个存储体就是这个单元要学习的内容。注意:多模块存储器是通过简单增加增加存储体的数量来实现扩容,和后面的字位扩展法是不同

那么为什么会冲突?之前提到过,内存是DRAM,每次读取之后都要恢复,而恢复时无法访问(读写)这个存储体。因此一旦读取过这个存储体后再次访问这个存储体则会产生冲突。

一般考研考察的是低位交叉编制,而且低位交叉编制与高位交叉编制的优劣也是考察过的。高位交叉编制就是访存地址的最高位用来选择存储体,如果是对于读取连续的数据单元如1000、1001、1002这种,高位交叉编制是竖向读取的(在王道书上的那个图可以看的比较明显),因此就会造成上面提到的冲突(反复读取一个存储体)。而低位交叉编制的读取是横向读取的,最低位用来选择存储体,因此对于读取连续地址的数据(前提是存储体的数量足够多,即个数超过  存取周期/总线传输周期)可以以流水线的方式读取,每次访问一个存储体不会造成冲突。需要提醒一下的就是,小心一个存储体的存储字长与总线带宽的长度,如果一个存储体的存储字长恰好等于总线带宽长度,那么一个总线周期只能读取一个存储体(不能做到流水线并行了)。这个点考研考察过。

这部分的题目是考研的简单题,做一些考研真题找找感觉即可。

三、内存容量扩展

这一部分的内容基本上是选择题的考点,考的频率还算高。要学会通过地址看容量 比如 地址 0000H —— 1FFFH的地址,编制单位为字节,那么容量的计算方式为 (1FFF- 0000 +1)B,即2000H字节,转化为10进制就是2^{13}B 即8KB(2H转化为10进制为0010)。对于容量扩展之后要选择多少芯片,基本上直接做除法就可以,如 存储体按字节编址,用8K*8bit的存储体(容量为8KB)搭建一个32KB的存储器,直接做除法就可以得到4个芯片。对于字位扩展法一般是高位做片选。 这部分内容没有考过比较复杂的选芯片,属于简单题。

四、外部存储

对于机械硬盘而言,在硬盘上寻找一条数据需要 盘面号、柱面号(磁头号)、扇区号,平均存取时间包含 寻道时间、旋转延迟(平均为转半圈的时间)、传输时间(一般为转完一个扇区所需的时间)、还有一个控制器时间延迟(这个时间只有当题目明确提到了才考虑,没有明说都忽略)

磁盘阵列这个知识点考过一两次,都是书上原文,有个印象就行。

固态的话记得写的时候要把一整个块都擦除了再去写,然后还有个磨损均衡技术,让每个块的擦除次数都平均(防止产生过多坏块)。

今天先这样,明天再写cache。祝各位元旦快乐。

  • 8
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值