广州市住房城乡建设部门户网站,网站建设必须买数据库么,南山商城网站建设哪家便宜,网络推广工具有哪些本篇博客是考研期间学习王道课程 传送门 的笔记#xff0c;以及一整年里对 计算机组成 知识点的理解的总结。希望对新一届的计算机考研人提供帮助#xff01;#xff01;#xff01; 关于对 存储系统 章节知识点总结的十分全面#xff0c;涵括了《计算机组成原理》课程里… 本篇博客是考研期间学习王道课程 传送门 的笔记以及一整年里对 计算机组成 知识点的理解的总结。希望对新一届的计算机考研人提供帮助 关于对 存储系统 章节知识点总结的十分全面涵括了《计算机组成原理》课程里的全部要点本人来来回回过了三遍视频其中还陆陆续续补充了许多内容所以读者可以相信本篇博客对于考研计算机组成原理 “存储系统” 章节知识点的正确性与全面性但如果还有自主命题的学校还需额外读者自行再观看对应学校的自主命题材料。 计算机组成原理 笔记导航 第一章 计算机系统概述(未完成) 第二章 数据的表示和运算(未完成) 第三章 存储系统 ⇦当前位置 第四章 指令系统 第五章 中央处理器 第六章 总线 第七章 输入输出系统计算机组成原理 复试精简笔记 (未完成) 如果本篇文章对大家起到帮助的话跪求各位帅哥美女们求赞 、求收藏、求关注 你必考上研究生我说的耶稣来了也拦不住 食用说明书 第一遍学习王道课程时我的笔记只有标题和截图后来复习发现看只看图片并不能很快的了解截图中要重点表达的知识点。 在第二遍复习中我给每一张截图中 标记了重点以及 每张图片上方总结了该图片 对应的知识点 以及自己的 思考 。 最后第三遍查漏补缺。 所以 我把目录放在博客的前面就是希望读者可以结合目录结构去更好的学习知识点之后冲刺复习阶段脑海里可以浮现出该知识结构做到对每一个知识点熟稔于心 请读者放心目录展示的知识点结构是十分合理的可以放心使用该结构去记忆学习 注意(⊙o⊙)每张图片上面的文字都是该图对应的知识点总结方便读者更快理解图片内容。 《计算机组成原理》第3章 存储系统 【考纲内容】 王道 P94 (一) 存储器分类 (二) 层次化存储器的基本结构 一和二网课耗时1 h (三) 半导体随机存取存储器 SRAM、DRAM、Flash存储器 (四) 主存储器 DRAM芯片和内存条、多模块存储器、主存和CPU之间的连接 三和四网课耗时0.5 h (五) 外部存储器 网课耗时1 h 磁盘存储器、固态硬盘SSD (六) 高速缓冲存储器Cache 网课耗时1.5 h Cache的基本原理Cache和主存之间的映射方式Cache中主存块的替换算法Cache写策略 (七) 虚拟存储器 网课耗时1 h 虚拟存储器的基本概念页式虚拟存储器基本原理、页表、地址转换、TLB快表段式虚拟存储器的基本原理段页式虚拟存储器的基本原理 【复习提示】 本章是历年命题重点特别是有关 Cache 和 虚拟存储器 的考点容易出 综合题 存储器的特点存储器的扩展芯片选择、连接方式、地址范围等)交叉存储器Cache的相关计算与替换算法虚拟存储器与快表也容易出 选择题 读者需掌握存在 Cache 和 TLB 的计算机中的地址翻译与Cache映射问题也建议结合 操作系统 - 内存管理 一起复习 知识点选择题综合题存储器的特点✔存储器的扩展✔交叉存储器✔Cache✔✔Cache的相关计算与替换算法✔虚拟存储器✔✔快表✔3.1 存储器概述 1. 存储器的层次结构 存储器的三大评判指标速度、容量、价格 使用任意一种存储器都无法满足用户对存储器 高速、大容量、低价格 的需求所以采用 多级结构 形成对应的 “存储体系“。 存储体系把两个或两个以上的存储介质通过 软件、硬件 或 软硬件结合 的方式把它们连成一个整体。使得这个存储体系具有高速、大容量、低价格的特点。 主存 - 辅存 结构解决 容量 问题缓存 - 主存 结构解决 速度 问题 主存和CPU两者的速度存在不匹配问题故使用 cache缓存 进行解决这里面还涉及到 局部性原理时间、空间 缓存 - 主存 层次采用 硬件方式 连成一个整体为了追求速度 主存 - 辅存 层次采用 软、硬件结合方式 连成一个整体 主存 - 辅存 构成 虚拟存储器 使用虚地址逻辑地址 缓存 - 主存 使用主存储器地址也就是实地址物理地址 2. 存储器的分类 ① 按 层次结构 分类 ② 按 存储介质 分类 半导体存储器磁表面存储器光存储器 ③ 按 存取方式 分类 随机存储器存储器的任何存储单元都能被 随机存取 且存取时间和存储单元的物理位置 无关半导体存储器是随机顺序存储器存储器只能按照 某种顺序来存取 存取时间和存储单元的物理位置 有关磁带是顺序磁盘是半顺序 ④ 按 信息的可更改性 分类 只读存储器ROM随机读写存储器RAM ⑤ 按 信息的可保持性 分类 易失性存储器非易失性存储器 3. 存储器的性能指标 字存储单元 存放一个机器字的存储单元相应的单元地址叫做 字地址 字节存储单元 存放一个字节的存储单元相应的单元地址叫做 字节地址 按字寻址 计算机可编址的最小单位是 字存储单元 按字节寻址 计算机可编址的最小单位是 字节存储单元 再补充下 字的概念 如果指单位 一个字 2个字节 如果指机器字 就是计算机一次运算的数据位数32位、64位如果指存储字 每个存储单元的位数一般是1B 存储字长是指存放在一个存储单元中的二进制代码个数内存中存储字的长度存储字长可以是8位、16位、32位等 不要把字节和字长混淆 。因为1字节 8位一般情况下所以存储字长都是8的倍数。1字长 n字节 下图举例说明 地址线24根224 16MB, 此时 1字节就是1B所以按字节寻址的范围就是16M 按字寻址时如果字长为16位那么1字长16就是2字节2 * 8此时按字寻址的范围就是8M 关键就是看 字长等于几字节 小结 3.2 主存储器
3.2.1 主存储器的基本构成 CPU 要实现对存储单元的访问首先要 选择存储芯片 即进行 片选 然后为选中的芯片依地址码 选择相应的存储单元 以进行数据的存取即进行 字选 片内的字选通常是由CPU送出的N条低位地址线完成的地址线直接接到所有存储芯片的地址输入端 (N 由片内存储容量决定) 片选信号的产生分为 线选法 和 译码片选法 1. 半导体元件的原理 每个存储器由 存储体、MAR 和 MDR 构成在 时序控制逻辑 的控制下有条不紊地运行 存储体存储矩阵由多个 存储单元 构成一个存储单元由多个 存储元 构成 2. 存储芯片的基本原理 如何根据地址去读/写某个存储字 n位地址 代表 2n个存储单元译码器 根据地址寄存器送来的地址转为某一条 字选线 的高电平信号 加压之后对应的MOS管连通之后进行读、写操作 MAR 不稳定只有当其电信号稳定之后控制电路 才会打开 译码器 的开关让其翻译地址 当 MDR 的输出稳定之后控制电路 才会认为此时的输出是正确的才让其给 数据总线 传输数据 片选线选择存储芯片是否有效 考试还会让你根据地址线、数据线、片选线、读/写控制线等信息确定金属引脚的数量 3. 如何实现不同的寻址方式 小结 3.2.2 SRAM和DRAM 1. DRAM和SRAM存储元件不同导致的特性差异 栅极电容是 破坏性读出读出就放电了所以在读出之后还得 重写 双稳态触发器是 非破坏读出所以速度更快 双稳态触发器成本高功耗高更贵 DRAM v.s SRAM 电容里面的电荷会逐渐消失所以必须在消失前进行 刷新 2. DRAM的刷新 3. DRAM的地址线复用技术 行地址列地址一共n位但可以用 n/2条地址线分别送到行地址缓冲器、列地址缓冲器里 小结 3.2.3 只读存储器ROM 1. 各种ROM的信息 2. 计算机内的重要ROM 小结 3.3 主存储器与CPU的连接
3.3.1 主存储器与CPU的连接 1. 单块存储芯片与CPU的链接 2. 多块存储芯片与CPU的链接 补充一下地址线和数据线的根数 取决于 存储器芯片 的容量如何理解这句话 分析 ① 先假设有一个存储芯片的容量为1GB ② 可能是下面几种情况 1GB 1G * 1B 512M * 2B 256M * 4B 存储单位个数 * 存储单位位数 虽然这三种情况容量都是1GB但代表了三个不一样的存储器。 ③ 以 1G * 1B 举例 1G 230也就是 30根地址线 1字节 8位也就是 8根数据线 (1) 位扩展 (2) 字扩展 ① 线选法 ② 译码片选法 使用 1-2 译码器 进行字扩展1-2 代表输入一位信号得到2种输出结果 下图左边存储芯片当地址为 1x xxxx xxxx xxxx 时存储芯片工作 下图右边存储芯片当地址为 0x xxxx xxxx xxxx 时存储芯片工作 3-8 译码器输入 000对应的 第1条线高电平信号 3-8 译码器输入 001对应的 第2条线高电平信号 3-8 译码器输入 010对应的 第3条线高电平信号 使用 2-4 译码器 进行字扩展 输入 00、01、10、11 当 2-4 译码器 的两条输入线接 A13、A15 时A14 是什么都没关系 (3) 字位扩展 位扩展增加存储字长提高数据总线传输能力 字扩展增加存储字数提高CPU寻址能力 小结 3-8 译码器 下图右边的译码器有 EN 使能端 和 小圆圈非门 使能端让译码器工作 注意下图多个 使能只有输入 100 时译码器才有效 CPU可使用译码器的 使能端 控制 片选信号 的生效时间 CPU先送出地址信号说我要取数据了 但是 MRER 会等到 地址信号稳定后再发出存储器请求信号 3.3.2 双端口RAM和多模块存储器 1. 双端口RAM 双端口RAM可以优化 多核CPU 访问一根内存的速度 2. 多模块存储器 (1) 多体并行存储器 采用高位交叉编制时用高位的地址来区分使用哪个存储单元低位交叉编制同理 高位编制访问 00 000 ~ 00 100读了5个存储字耗时5T 对于低位交叉编制耗时T (n-1) × r 为什么低位交叉编制可以不用等待恢复时间呢 因为低位交叉编制是 一个个存储芯片交替使用高位交叉是一直占用一个存储芯片直到满了再去下一个存储芯片 为什么要探讨 连续访问 的情况 因为很多数据、数据结构在内存中就是被连续存储 m ≥ T / r 一般来说存取时间 与 总线传输周期 是同一个概念 (2) 单体多字存储器 小结 3.4 外部存储器 注意和《操作系统》第5章 输入输出管理 5.3 磁盘和固态硬盘 联系起来学习 3.4.1 磁盘存储器 1. 磁盘原理 (1) 磁盘设备的组成 (2) 磁盘的性能指标 (3) 磁盘地址 2. 磁盘阵列 小结 3.4.2 固态硬盘 3.5 高速缓冲存储器 ⭐
3.5.1 Cache的基本概念和原理 1. Cache的工作原理 【问题】Cache的作用 答弥补CPU与内存之间的速度差异 【问题】Cache的工作原理 答程序访问的局部性 Cache由SRAM构成具体特性可复习 3.2.2 SRAM和DRAM 目前已经被集成到CPU内部下图中Cache在CPU外部只是为了更好地展示效果 2. 局部性原理 3. 性能分析 4. 主存和缓存的编址 主存与Cache之间以 块 为单位进行数据交换 小结 3.5.2 Cache和主存的映射方式 【问题】什么是地址映射 答从主存调入指定块到Cache里该放到Cache的哪一块里 【问题】Cache如何标记已经存放的主存块 答使用 有效位 标记位标记位记录存放的是哪一块主存块有效位记录标记位是否有效 1. 全相联映射 全相联映射任意找空闲块存放 使用 全相联映射 的访存过程 2. 直接映射 直接映射固定的映射关系 缺点空闲区不能用必须一一对应 对 标记 进行优化 使用 直接映射 的访存过程 3. 组相联映射 组相联映射组间直接映射 组内全相联映射 组相联映射 的地址结构 使用 组相联映射 的访存过程 小结 Cache 的总容量包括存储容量、标记阵列容量有效位、标记位 标记阵列中的一致性维护位 和 Cache 数据一致性维护方式相关替换算法控制位和替换算法相关 3.5.3 Cache替换算法 直接映射方式无需考虑替换算法 1. 随机算法 (RAND) 2. 先进先出算法 (FIFO) FIFO没考虑 局部性原理可能会发生 抖动现象 3. 近期最少使用 (LRU) LRU算法的Cache命中率高但如果 频繁访问的主存块数量 Cach行的数量则有可能发生 抖动 4. 最近不经常使用 (LFU) LRU的缺点过去经常访问的主存块在未来不一定会用到 小结 近期最少使用 与 最不经常使用 很容易混淆区别小技巧 LRU 淘汰一段时间内最久没有被访问的可以理解为 淘汰老人很久没被访问了 LFU 淘汰访问次数最小的可以理解为 淘汰废物不怎么被访问 3.5.4 Cache写策略 因为读操作不会导致Cache与主存的数据不一致所以只需考虑写操作 当CPU对Cache写操作时如果Cache里有目标块就是 写命中 没有目标块就是 写不命中 1. 写命中 ① 写回法 写回法Cache块换出时对块的 修改位 (脏位) 进行判断再决定时写回还是舍弃 ② 全写法 全写法写直达命中时Cache与内存一块写 当CPU不对Cache写操作的时候写缓冲 就可以在专门的控制电路下去写回主存保持Cache与主存数据一致 2. 写不命中 ① 写分配法 ② 非写分配法 直接对主存写数据不会调入Cache 3. 多级Cache 小结 章节小结 Cache的总容量用户Cache容量 CAM 计数器 修改位 用户Cache容量狭义上 指 2c C - 1 块Cache块CAM (相联存储表) Cache的一部分完成由主存地址到Cache地址的转换计数器 替换算法计数修改位写策略标记 3.6 虚拟存储器 ⭐ 注意和《操作系统》第3章 内存管理 3.2 虚拟内存管理 联系起来学习 3.6.1 页式存储器 1. 页式存储的思想 小结 3.6.2 虚拟存储器 3.7 常见问题和易混淆知识点
1. 存取时间 Ta 就是存储周期 Tm 吗 不是 存取时间 Ta 是执行一次读操作或写操作的时间分为 读出时间 和 写入时间 读出时间是从主存接收到有效地址开始到数据稳定为止的时间 写入时间是从主存接收到有效地址开始到数据写入被写单元为止的时间 存储周期 Tm 是指存储器进行连续两次独立地读或写操作所需的最小时间间隔 所以存取时间 Ta 不等于 存储周期 Tm 。通常存储周期T大于存取时间T 2. Cache行的大小和命中率之间有什么关系 行的长度较大可以充分利用程序访问的空间局部性使一个较大的局部空间被一起调到Cache 中因而可以增加命中机会 但是行长也不能太大主要原因有两个 ① 行长大使失效损失变大。也就是说若未命中则需花更多时间从主存读块② 行长太大Cache项数变少因而命中的可能性变小 3. 发生取指令Cache缺失的处理过程是什么 ① 程序计数器恢复当前指令的值② 对主存进行读的操作③ 将读入的指令写入Cache 中更改有效位和标记位④ 重新执行当前指令 1存储器的 层次结构 主要体现在何处 为何要分这些层次 计算机如何管理这些层次 存储器的层次结构主要体现在 Cache - 主存和 主存 - 辅存 这两个存储层次上 Cache - 主存层次 在存储系统中主要对 CPU访存起加速作用 即从整体运行的效果分析CPU访存速度加快接近于Cache的速度而寻址空间和位价却接近于主存 主存 - 辅存层次 在存储系统中主要起 扩容作用 即从程序员的角度看他所使用的存储器的容量和位价接近于辅存而速度接近于主存 综合上述两个存储层次的作用从整个存储系统来看就达到了 速度快、容量大、位价低 的优化效果 主存与Cache 之间的信息调度功能全部由 硬件自动完成 而主存与辅存层次的调度目前广泛采用 虚拟存储技术 实现即将主存与辅存的一部分通过 软/硬结合 的技术组成虚拟存储器 程序员可用这个比主存实际空间物理地址空间大得多的虚拟地址空间逻辑地址空间编程当程序运行时再由软/硬件自动配合完成虚拟地址空间与主存实际物理空间的转换 因此这两个层次上的调度或转换操作对于程序员来说都是 透明 的 2存储周期和存取时间 有何区别 存取周期和存取时间的主要区别是存取时间 仅为完成一次操作的时间 而存取周期不仅包含操作时间而且包含操作后线路的恢复时间即 存取周期 存取时间恢复时间 3在虚拟存储器中页面是设置得大一些好还是小一些好 页面不能设置得过大也不能设置得过小 因为页面太小时平均页内剩余空间较少可节省存储空间但会使得页表增大而且页面太小时不能充分利用访存的空间局部性来提高命中率 页面太大时可减少页表空间但平均页内剩余空间较大会浪费较多存储空间页面太大还会使页面调入/调出的时间较长