• 计算机组成原理-第三章 存储系统【期末复习|考研复习】


    前言

    总结整理不易,希望大家点赞收藏。

    给大家整理了一下计算机组成原理中的重点概念,以供大家期末复习和考研复习的时候使用。
    参考资料是王道的计算机组成原理和西电的计算机组成原理。


    计算机组成原理系列文章传送门:
    第一/二章 概述和数据的表示和运算
    第三章 存储系统
    第四章 指令系统
    第五章 中央处理器
    第六章 总线
    第七章 输入/输出系统



    第三章 存储系统

    3.1 存储器的分类

    按层次分:
    1、主存储器(主存),CPU可以直接随机地对其进行访问,也可以和高速缓存器及辅助存储器交换数据。
    2、辅助存储器(辅存),不能与CPU直接相连,用来存放当前暂时不用的程序和数据。
    3、高速缓冲存储器,位于主存和CPU之间,用来存放正在执行的程序段和数据。

    按存取方式分:
    1、随机存储器(RAM)。存储器的任何一个存储单元的内容都可以随机存取,而且存取时间与存取单元的物理位置无关,主要用作主存或高速缓冲存储器。
    2、只读存储器(ROM)。存储器的内容只能随机读出而不能写入。即使断电,内容也不会丢失。3、 串行访问存储器。

    按信息的可保存性分:
    1、易失性存储器,如RAM。
    2、非易失性存储器,如ROM,磁表面存储器和光存储器。

    3.2 存储层次化结构

    在这里插入图片描述
    主存-辅存:实现虚拟存储,解决主存容量不够。
    Cache-主存:解决CPU和主存速度不匹配的问题。

    3.3 半导体随机存储器

    3.3.1 SRAM和DRAM(非非非非常重要)

    主存由DRAM实现,Cache由SRAM实现
    SRAM(静态随机存储器)的存储元是双稳态触发器,非破坏性读出,存取速度快,但集成度低,功耗较大。

    DRAM(动态随机存储器)的存储元是栅极电容的电荷,采用地址复用技术,地址线为原来的一半,地址信息分行和列两次传送。具有容易集成,价位低,容量大,功耗低的特点。
    DRAM的刷新时间为2ms,以行为单位,需要行地址。
    刷新方式分为:
    1、分散刷新,前一半读写,后一半刷新。优点:没有死区;缺点:加长了系统的存取周期。
    2、集中刷新:专门有一段时间用于刷新。优点:读写不受刷新影响;缺点:有死区。3、异步刷新:隔一段集中读写时间刷新一次。既可以缩短死区,又可以充分利用刷新时间。
    在这里插入图片描述

    3.3.2 只读存储器

    ROM具有结构简单,可靠性高的特点。
    容量1024×8bit 前1024是地址线,后8bit是数据线。
    引脚数目由地址线、片选线、数据线、读写控制线组成。

    3.4 主存储器的扩展(非非非非常重要)

    扩展方式跟后面的CPU那块一样重要
    主存容量的扩展:
    1、位扩展法:8片8K×1bit的chip连接八根数据线组成一个8K×8bit的存储器。
    2、 字扩展法:用2/4或3/8译码器来区分个芯片的地址位置。
    3、字位同时扩展法:两者结合。

    片选信号的产生分为 :
    1、线选法 :简单,不需要译码器。
    2、译码片选法 。

    3.5 双口RAM和多模块存储器

    3.5.1 双端口RAM

    双端口RAM:指同一个存储器有左、右两个独立的端口,分别具有两组相互独立的地址线、数据线和读写控制线,允许两个独立的控制器同时异步地访问存储单元。采用忙信号来从逻辑上判断暂时关闭哪个端口。

    3.5.2 多模块存储器

    单体多字存储器 :存储器中只有一个存储体,每个存储单元存储m个字,总线宽度也为m个字。一次并行读出m个字,地址必须顺序排列并处于同一存储单元。缺点:指令和数据必须连续存放。

    多体并行存储器 :由多体模块组成,每个模块都有相同的容量和存取速度,各模块都有独立的读写控制电路、地址寄存器和数据寄存器,既能并行工作,又能交叉工作。

    多体并行存储器由分为高位交叉编址(顺序方式)和低位交叉编址(交叉方式)
    高位交叉编址 :高位地址表示体号,低位地址为体内地址。
    低位交叉编址 :低位地址为体号,高位地址为体内地址。地位交叉编址更适合顺序连续访问,存取模块可以并行访问。二高位交叉编址只能串行访问。

    流水线方式,存储器交叉模块数应大于等于 m=T/r (T为存取周期,r为总线传送周期),连续读取m个字所需时间为t1=T+(m-1)r,而顺序方式连续读取m个字所需时间为t2=mT

    低位交叉的多体存储器,俗称双通道。

    3.6 高速缓冲存储器

    高速缓冲技术就是利用程序访问的局部性原理 。
    当CPU发出读请求时,如果访存地址在Cache中命中,就将此地址转换成Cache地址,直接对Cache进行读操作,与主存无关;如果Cache不命中,则仍需访问主存,并把此字所在的块一次从主存调入Cache内。若此时Cache已满,则需根据某种替换算法,用这个块替换掉Cache中原来的某块信息。CPU与Cache之间的数据交换以字位单位,而Cache与主存之间的数据交换以Cache块为单位。

    3.6.1 Cache和主存的映射方式

    直接映射(对号入座):
    主存中的每一块只能装入Cache中的唯一位置,若位置已有内容,原来块将无条件被替换出去。直接映射关系可表示为:j = i mod 2^c(j是Cache的块号,又称行号,i是主存的块号,2 ^c是Cache的总块数)。
    直接映射地址结构:标记、Cache行号、块内地址。
    访问过程:先访问行号c位,找到在Cache中的位置,然后再对标记位进行对比,若相等且有效位为1,则命中,反之不命中,CPU从主存读出该地址送到相应Cache并且有效位置为1,标记设为地址中高t位,且将内容送到CPU。优点:实现简单。缺点:不够灵活,冲突概率最高,空间利用率最低。

    全相联映射(随意放):
    优点:比较灵活,冲突概率低,空间利用率高,命中率也高。缺点:标记比较较慢,通常采用昂贵的按内容寻址的相联存储器进行地址映射。

    组相联映射(按号分组,组内随意放):将Cache分为大小相同的组,组间采用直接映射,组内采用全相联映射。

    3.6.2 Cache中主存块的替换算法

    1、随机算法RAND:没有依据程序访问的局部性原理。
    2、先进先出算法FIFO:没有依据程序访问的局部性原理。
    3、近期最少使用算法LRU。
    4、最不经常使用算法LFU

    3.6.3 Cache写策略

    对于Cache写命中 :
    1) 全写法 (写直通法write-through):必须把数据同时写入Cache和主存
    2) 写回法 (write-back):只修改Cache的内容,而不立即写入主存,只有当此块被换出时才写回主存

    对于Cache写不命中 :
    1) 写分配法 (write-allocate):加载主存中的块到Cache中,然后更新这个Cache块
    2) 非写分配法 (not-write-allocate):只写入主存,不进行调块
    非写分配法通常与全写法合用,写分配法通常和写回法合用。各级Cache之间采用全写法+非写分配法。Cache和主存之间采用写回法和写分配法。

    3.7 虚拟存储器

    同时具有虚拟页式存储器(有TLB)和Cache的系统中,访问顺序为TLB->页表->Cache->主存。
    虚拟存储器和Cache的不同之处 :1)Cache主要解决系统速度,而虚拟存储器是为了解决主存容量。2)Cache全由硬件实现,是硬件存储器,对所有程序员透明;而虚拟存储器由OS和硬件共同实现,是逻辑上的存储器,对系统程序员不透明,但对应用程序员透明。3)虚拟存储器系统不命中时对系统性能影响更大。4)Cache不命中时主存能和CPU直接通信,同时将数据调入Cache中;而虚拟存储器系统不命中时,只能先由硬盘调入内存中,而不能直接和CPU通信。

    4 基础练手题

    4.1

    在这里插入图片描述
    在这里插入图片描述

    4.2

    在这里插入图片描述

    4.3

    在这里插入图片描述

    4.4

    在这里插入图片描述
    在这里插入图片描述

    4.5

    在这里插入图片描述
    在这里插入图片描述

    4.6

    在这里插入图片描述
    在这里插入图片描述

    5 综合练手题(非常非常非常非常重要)

    5.1

    在这里插入图片描述
    在这里插入图片描述

    5.2

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    5.3

    在这里插入图片描述
    在这里插入图片描述

    5.4

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    5.5

    在这里插入图片描述
    在这里插入图片描述

    5.6

    流水线相比于上面几道不是那么重要(我也不敢说不考),但也要做几个维持手感
    在这里插入图片描述
    在这里插入图片描述

    5.7

    在这里插入图片描述
    在这里插入图片描述

    下一章传送门

    第四章 指令系统

    总结

    相信这一章的干货也是满满,这些题有不会的评论区留言,我也可以解答=v=有遗漏的我再补充

  • 相关阅读:
    编程入门之日志聚合系统
    redis常见问题
    Qt编程,TCP编程、数据库
    java开发手册-04安全规约
    猿创征文|见过的最傲娇的开源管理者,真的气人,SRS视频流方案
    Python 基础测试题(含答案)
    面试背诵版—操作系统
    Vue插槽
    专业调色软件 3D LUT Creator Pro 激活中文 for mac
    「嵌入式」基于国产全志科技T3——从开发板到PLC测试案例
  • 原文地址:https://blog.csdn.net/qq_45400167/article/details/136383036