存储的分类 按照存取方式
随机存取存储器(RAM) 内存
顺序存取存储器(SAM)磁带
直接存取存储器(DAM)磁盘
SAM和DAM都属于串行访问存储器
按照信息读出后 原信息是否被破坏
DRAM芯片 破坏性读出 磁盘光盘
SRAM芯片 非破坏性读出
存储性能指标 容量 数据传输速率即带宽 存储周期
主存储器的基本组成
一次读写的完整流程是什么样的
豆包总结
一次读操作完整流程
一次写操作完整流程
注意点 区分片内地址和片选地址
片选是外部电路 拿高位地址生成 所有芯片全部收到全部地址 包括没选中的芯片 但是片选无效
这里就可以联想下一个知识点
存储扩展的两种方式
寻址方式
按字节寻址 按字寻址 按半字寻址 按双字寻址
SRAM和DRAM
DRAM 用于主存 SRAM用于cache
重点:SRAM和DRAM对比
对比点整理
豆包整理
补充发热量的意思
SRAM 不是读写的时候才耗电,静态保持数据的时候就在持续耗电发热。
双稳态触发器里面,始终有管子处于导通,一直有电流在回路流动,只要通电维持数据,就持续消耗电能
DRAM
电容保存电荷,静态(不读不写)的时候几乎没有电流;只有读写、刷新瞬间才有电流。
大部分时间几乎不耗电,所以整体发热量小,功耗低
补充送行列地址的区别
DRAM 芯片引脚数量有限,为了减少芯片引脚,行地址、列地址复用同一组地址线。
SRAM:同时送 SRAM 的行地址、列地址有分开独立的两组地址引脚,行、列地址同一时刻一起送入芯片,一次性译码。
同:全都是易失存储器
选择会考零碎的概念区别
大题考DRAM 刷新的三种方式:集中式、分散式、异步刷新 算刷新间隔 刷新开销
‼️‼️注意二维译码减少选通线和 地址线复用 一定要好好区分 在脑中多过几次
芯片把地址拆成行地址、列地址,内部做行译码、列译码。
减少芯片内部的行 / 列选通线(字线)数量
发生在芯片内部电路,外部引脚不受影响
选通线的数量 是有多少个存储单元或者存储元(看具体题目)就有多少根
引脚的数量是存储单元的对数 也就是地址线的位数
芯片把地址拆成行地址、列地址 并不能减少引脚的数目
让引脚数目减少的是行列地址复用 引脚减半
豆包口诀:
DRAM 电容会漏电,二毫秒内全行刷;
集中刷新死区长,分散刷新速度垮;
异步分摊最实用,按行刷新别管列。
ROM
只读存储器 ROM
可能的考法 区分几类ROM 区分和RAM的区别
⚠️易错:SSD≠闪存,闪存是芯片,SSD 是用闪存做出来的磁盘形态设备。
双端口RAM和 多模块存储器
先明白这两个东西是干嘛的 DRAM芯片恢复时间比较长有可能是存取时间的几倍
但是多核cpu都要方寸 而且CPU的读写速度比主存快很多
双端口RAM了解即可
多模块存储器 也分为两种
多体并行存储器
可以理解为多个内存条
有两种编址方式: 高位交叉和低位交叉
重点是分析连续访问多个地址的存取时间
假如T=4r T是存取周期 r是存取时间
高位交叉:连续读5个单位的数据高位交叉就是 5*T
低位交叉:在T=4r的情况下 如果刚好使用4个内存条 那么前4个也就是前(n-1)读取时间就是每过r就读入一块数据最后一块数据的读取需要一整个T 即(n-1)r+T
这就是流水线的思量
所以可以推出来 要想一个流水线不中断 m≥T/r 小于时 需要等待 大于时 某个体会闲置
还有一种 单体多字存储器
豆包补充关于单体多字的说明
硬件:只有 1 套存储阵列(“单体”),但是存储体内部,每个存储单元存 m 个字。总线宽度拉宽为 m 个字
一次读m个字 靠加宽总线来拿更多数据
和位扩展有点像 但是 位扩展是凑一个字的bit 单体多字是直接一次读出m个字
缺点:如果程序不是顺序连续读,性能很差。
⚠️注意 对于多体并行存储器和字扩展的一点说明
多个存储器如果只按照高位交叉编址组织 就只是扩充容量 相当于字扩展
但是如果编址方式采用了低位交叉编址就可以即扩容又提高读写速度 !注意这里 确实可以提速 但是只有连续、成块访问的时候才能发挥高速效果
这一讲的概要:
这一讲其实就是详细探讨 存储器的字扩展和位扩展
⚠️ 关于控制信号 CS和CE片选信号 以及流程的说明
存储器读操作 信号完整流程
CE和CS都是片选线 带横线低电平有效 不带横线高电平有效
前提:存储器芯片:地址线A、数据线D(双向)、片选(低有效)、读写控制(高读、低写)。
考试核心:信号先后顺序、哪些信号由 CPU 发出、什么时候数据稳定出现在数据总线、片选的作用。
地址信号需要一点建立时间,芯片内部译码驱动,选中存储矩阵里面对应的存储单元。
⚠️必须地址稳定之后,再让片选有效;如果地址还没稳定就打开片选,会读到错误单元。
部分芯片是分开信号:输出使能(读使能),读的时候拉低。逻辑等价。
关键时间概念(选择题常考)
字扩展的两种方式
把多条高位地址送给译码器输入;译码器输出产生片选信号。
n 根输入地址线,译码器输出 路片选信号。完美解决线选法的地址碎片、总线冲突问题。
关于电路时序图的补充
1、地址线上的交叉「×」
这个交叉不是信号跳变,是 “不确定区间”。
通俗:交叉 = 信号正在翻转,数值不确定,不能采样;平直横线 = 信号稳定,可以使用。
2、灰色填充区域 vs 空白区域
根据以上规律能够大概分析时序图即可
对于编址的一些疑问补充
由于已经知道高位交叉编址和低位交叉编址的区别
然后在学到让高位地址作为片选线进行片选的时候 我产生了一些疑惑
就是如果按照译码器翻译出来每个芯片都有它的最低地址和最高地址 那么这样的情况下就和低位交叉编址产生矛盾
原来答案就是 → 高位交叉编址就是用地址高位来进行片选 高位交叉编址就是用地址低位来进行片选!
注意线选法和片选法还有一个区别就是 线选法电路简单 片选法电路复杂
磁表面存储器优点
①存储容量大,位价格低;
②记录介质可以重复使用;
③记录信息可以长期保存而不丢失,甚至可以脱机存档;
④非破坏性读出,读出时不需要再生
磁表面存储器的缺点
①存取速度慢;
②机械结构复杂;
③对工作环境要求较高。
结构 必须了然于胸 磁头 柱面 扇区
磁盘的性能指标
磁盘的容量
非格式化容量是指磁记录表面可以利用的磁化单元总数。 也就是没有划分扇区 理论上最大的bit
格式化容量是指按照某种特定的记录格式所能存储信息的总量。划分扇区后 除去扇区间隙 头部校验信息等
记录密度
平均存取时间(计算题必考)
这一部分和操作系统最后一章联系非常紧密!!!
但是这里我产生了一个疑问
按照这个计算数据传输率的公式 理论上应该达不到这个数字 因为读完一个扇区 不能接着读下一个扇区
豆包的回答 N = 整条磁道全部字节(包含扇区 +
扇区间隙、头部、间隔)
这个是磁道物理带宽,磁盘硬件极限传输率:磁盘一圈完整扫过磁头,把磁道上所有比特全部读出来的速率。
现实是达不到的 真实磁盘有间隙 读完一个扇区还需要校验 中断
所以连续读多个扇区,实际有效传输率 < 。
考试的时候
磁盘地址的划分 这个简单 一般地址排布就按照 驱动器号 柱面号(注意会出现一个柱面对应多个磁道的情况) 盘面号 扇区号
还需要掌握的一个点是 磁盘读写的时候,需要串‑并、并‑串变换,因为系统总线并行,磁盘介质是串行存储
问:磁头读出信号之后,先经过什么? → 读放电路(信号放大)
问:写磁盘时并行数据首先进入哪个模块? → 并‑串变换电路
写:并行 →【并串转换】→串行 →磁头写盘
读:盘片磁头输出串行 →【读放放大】→【串并转换】→并行送总线