《ch3.存储器及存储体系.ppt》由会员分享,可在线阅读,更多相关《ch3.存储器及存储体系.ppt(81页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、1第三章第三章 存储体系存储体系23.1 3.1 存储器概述存储器概述本节主要内容包括:本节主要内容包括:v存储器的基本概念存储器的基本概念v主存储器的组成主存储器的组成v存储器的分类存储器的分类v存储器的性能指标存储器的性能指标33.1.13.1.1存储器的基本概念存储器的基本概念 v 存储媒体存储媒体v 基本存储单元基本存储单元v 存储单元存储单元v 存储单元地址存储单元地址v 存储体存储体43.1.23.1.2主存储器的组成主存储器的组成2n1MAR译码器存储阵列读放电路写驱动电路MDRn0RDWRDBAB53.1.3存储器的分类存储器的分类按按存储介质存储介质按按用途及与用途及与CPU
2、CPU的关系的关系按按寻址方式:寻址方式:RAMRAM、SAMSAM、DAMDAM按按读写功能:读写功能:RWSRWS、ROMROM磁存储器磁存储器半导体存储器半导体存储器激光存储器激光存储器主存储器主存储器控制存储器控制存储器高速缓冲存储器高速缓冲存储器外存储器外存储器63.1.4存储器的性能指标存储器的性能指标v存储器容量存储器容量 存储器所能容纳的二进制信息总量,通常以字节表示。存储器所能容纳的二进制信息总量,通常以字节表示。v存储器速度存储器速度存取时间:从存储器读取一次信息(或写入一次信息)所需要的时间存取时间:从存储器读取一次信息(或写入一次信息)所需要的时间存储周期:存储器进行一
3、次完整的读写操作所需的全部时间存储周期:存储器进行一次完整的读写操作所需的全部时间存储器带宽:单位时间内存储器可读写的字节数存储器带宽:单位时间内存储器可读写的字节数v存储器可靠性存储器可靠性 破坏读出、信息易失、断电丢失破坏读出、信息易失、断电丢失v价格(成本)价格(成本)对存储器的基本要求是:大容量、高速度、高可靠性和低成本对存储器的基本要求是:大容量、高速度、高可靠性和低成本73.2 3.2 半导体存储元件半导体存储元件本节主要内容包括:本节主要内容包括:v 半导体存储器的常见分类及特点半导体存储器的常见分类及特点v 半导体基本存储单元及其工作原理半导体基本存储单元及其工作原理v 半导体
4、存储芯片的组织半导体存储芯片的组织83.2.1 半导体存储器的常见分类及特点半导体存储器的常见分类及特点v双极型半导体存储器双极型半导体存储器TTL TTL、发射极耦合电路存储器发射极耦合电路存储器ECLECL其特点:速度高、驱动能力强,但集成度低、功耗大、价格高,其特点:速度高、驱动能力强,但集成度低、功耗大、价格高,一般用于小容量的高速存储器。一般用于小容量的高速存储器。v MOSMOS场效应晶体管存储器(分动态、静态两种)场效应晶体管存储器(分动态、静态两种)其特点:集成度高、功耗小、工艺简单、成本低,但速度较低,其特点:集成度高、功耗小、工艺简单、成本低,但速度较低,一般用于大容量存储
5、器一般用于大容量存储器93.2.2 3.2.2 半导体基本存储单元及其工作原理半导体基本存储单元及其工作原理(1)(1)双极型半导体存储单元工作原理双极型半导体存储单元工作原理v存储原理:用晶体管导通与截存储原理:用晶体管导通与截 止来表示止来表示0和和1。若。若T0导通、导通、T1截止表示存储截止表示存储0,则则T0 截止、截止、T1导通表示存储导通表示存储1。v工作原理:工作原理:写入操作写入操作存储状态存储状态读出操作读出操作DDRRABVccT0T1字线W3.6v4.2v1.4v导通截止103.2.2 3.2.2 半导体基本存储单元及其工作原理(续半导体基本存储单元及其工作原理(续)(
6、2 2)动态)动态MOSMOS存储单元工作原存储单元工作原理理v存储原理:动态存储原理:动态MOSMOS存储单元存储单元 靠电容存储信息,若电靠电容存储信息,若电 容充有电荷表示存储容充有电荷表示存储1 1,电容放电则表示存储电容放电则表示存储0 0。v工作原理:工作原理:写入操作写入操作存储状态存储状态读出操作读出操作字线W位线DTCsE113.2.2 3.2.2 半导体基本存储单元及其工作原理(续半导体基本存储单元及其工作原理(续)(3 3)静态)静态MOSMOS存储单元工作原理存储单元工作原理v存储原理存储原理:用晶体管导通与用晶体管导通与 截止来表示截止来表示0和和1。v工作原理工作原
7、理:写入操作写入操作存储状态存储状态读出操作读出操作字线WVccDDABT2T3T4T5T0T1高电位导通导通数据123.2.3 3.2.3 半导体存储芯片的组织半导体存储芯片的组织(1)(1)一维地址译码方式一维地址译码方式v 存储阵列由存储阵列由M MN N个基本存储单元(位)组成。个基本存储单元(位)组成。v 存储阵列的每一行对应一个字,共用一根字线。存储阵列的每一行对应一个字,共用一根字线。v 每一列对应不同字的同一位,用位线相连。每一列对应不同字的同一位,用位线相连。v 用一组地址译码器对地址进行译码,使其中一根字线有效,用一组地址译码器对地址进行译码,使其中一根字线有效,选中相应的
8、字。选中相应的字。下图是一个下图是一个16*816*8位,采用一维地址译码方式的存储器示意图:位,采用一维地址译码方式的存储器示意图:13地址16选1地址译码器读写电路读写电路读写电路A0A1A2A3W0W1W15D0D1D7D0D0D1D1D7D7字线字1位1一维地址译码方式的一维地址译码方式的RAMRAM:143.2.3 3.2.3 半导体存储芯片的组织(续)半导体存储芯片的组织(续)(2 2)二维地址译码的位选方式)二维地址译码的位选方式v 存储阵列由存储阵列由M MN N个基本存储单元(位)组成。个基本存储单元(位)组成。v n n位地址按行和列分成两组,分别由行、列两个译码器位地址按
9、行和列分成两组,分别由行、列两个译码器 译码,选中相应的行、列,即行线和列线交叉位置的基本存译码,选中相应的行、列,即行线和列线交叉位置的基本存 储单元(位)被选中,通过位线进行读写。储单元(位)被选中,通过位线进行读写。v 可将多片同样芯片并联组成存储体,一个地址经过译码分别可将多片同样芯片并联组成存储体,一个地址经过译码分别 选中每个芯片当中的一位组成一个存储单元。选中每个芯片当中的一位组成一个存储单元。其原理图如下:其原理图如下:15地址X地址译码器A0A1A2A3X0X31Y31Y0A4Y 地 址 译 码 器读写电路A5A6A7A8A9D读写DDDD3232位二二维维地地址址译译码码的
10、的位位选选方方式式163.2.3 3.2.3 半导体存储芯片的组织(续)半导体存储芯片的组织(续)(3 3)二维地址译码的字选方式)二维地址译码的字选方式行译码器列 译 码 器读 写 电 路A0A1An11An1An21b位字0b位字1b位字S10b1b对 Sb对位线b根数据线S根线读写W/S根线W/SSb位173.3 3.3 半导体只读存储器半导体只读存储器ROMROM本节主要内容包括:本节主要内容包括:v半导体只读存储器半导体只读存储器ROMROM的特点及应用的特点及应用 只能读出信息,而不能写入的随机存储器。只能读出信息,而不能写入的随机存储器。与与RAMRAM相比速度相当、结构简单、集
11、成度高、造价低、功耗小、相比速度相当、结构简单、集成度高、造价低、功耗小、可靠性高、无掉电信息丢失、无读出信息破坏、不需要刷新。可靠性高、无掉电信息丢失、无读出信息破坏、不需要刷新。与外存相比,都具有掉电信息不丢失的特点,但速度高。与外存相比,都具有掉电信息不丢失的特点,但速度高。应用有以下三类:应用有以下三类:存放软件存放软件存放微程序存放微程序存放特殊编码存放特殊编码v 掩模只读存储器掩模只读存储器MROMMROMv 一次性编程只读存储器一次性编程只读存储器PROMPROMv 可改写的只读存储器可改写的只读存储器EPROMEPROMv 电可改写只读存储器电可改写只读存储器EEPROMEEP
12、ROM和闪存和闪存183.3.1 3.3.1 掩模只读存储器掩模只读存储器MROMMROM由生产厂生产的存有固定信息的ROM,用户只能选用而无法修改原存的信息或者芯片制造厂商可根据用户提供的信息,设计相应的光刻掩模来成批生产。1.1.MOSMOS只存储器只存储器2.2.双极型双极型ROMROMA0A1A2A3A4 读放电路 Y地址译码DA5 A6 A7Vcc读Vcc字地址译码器读放电路D3 D2 D1 D0W1W2W3存储阵列读193.3.2 3.3.2 一次性编程只读存储器一次性编程只读存储器PROMPROM 这是一种封装后可编程序的半导体只读存储器。存储的初始内容是全“0”或全“1”,由用
13、户根据自己的需要,用过载电压来写入信息,但只能写一次。多射极的熔丝式PROM示意图如下:SSSSSSSSSSSSSSSS地址译码 读 放 电 路VccA0A1A2A3A4 D7 D6 D1 D0读203.3.3 3.3.3 可改写的只读存储器可改写的只读存储器EPROMEPROM EPROMEPROM是一种可多次改写的是一种可多次改写的ROMROM。其基本存储电路如图:其基本存储电路如图:字线位线EPROMVcc213.3.4 3.3.4 电可改写只读存储器电可改写只读存储器EEPROMEEPROM和闪存和闪存223.4 3.4 主存储器与主存储器与CPUCPU的连接的连接本节主要内容包括:本
14、节主要内容包括:v CPUCPU与与MMMM速度的协调速度的协调v 存储芯片的工作时序存储芯片的工作时序v 用存储芯片构成主存储器用存储芯片构成主存储器233.4.1 3.4.1 CPUCPU与与MMMM速度的协调速度的协调v 同步方式:同步方式:CPUCPU周期内存存取周期总线周期周期内存存取周期总线周期 由于由于CPUCPU的速度远高于主存速度,这种方式对的速度远高于主存速度,这种方式对 CPUCPU限制过死,使限制过死,使CPUCPU速度降低。速度降低。v 准同步方式:准同步方式:CPUCPU以节拍周期为单位与内存同步以节拍周期为单位与内存同步 CPUCPU完全根据自身的操作需要确定自己
15、的工作周期,完全根据自身的操作需要确定自己的工作周期,存储器有自己固有的读写周期,两者完全独立存储器有自己固有的读写周期,两者完全独立243.4.2 3.4.2 存储芯片的工作时序存储芯片的工作时序v 读周期时序读周期时序v 写周期时序写周期时序(1 1)静态随机存储器)静态随机存储器SRAMSRAM的工作时序:的工作时序:读出数据读周期AddrCSRDDataAddr写周期CSWR写入数据Data253.4.2 3.4.2 存储芯片的工作时序存储芯片的工作时序(续续)(2)(2)动态随机存储器动态随机存储器DRAMDRAM工作时序工作时序读周期读出数据AddrRASCASRDData行列RA
16、SCASRDDataAddr行列写入数据写周期AddrRASCAS刷新周期263.4.3 3.4.3 用存储芯片构成主存储器用存储芯片构成主存储器v要解决的问题:要解决的问题:SRAMSRAM、DRAMDRAM和和ROMROM的选取的选取如何利用现有的芯片构造所需要的存储器如何利用现有的芯片构造所需要的存储器v三种构造方式(设需要组成一个三种构造方式(设需要组成一个M MN N的存储器,而现有的的存储器,而现有的 存储芯片是存储芯片是m mn n的存储芯片)的存储芯片)位扩展位扩展字扩展字扩展字位同时扩展字位同时扩展273.4.3 3.4.3 用存储芯片构成主存储器(续)用存储芯片构成主存储器
17、(续)(1 1)位扩展()位扩展(M Mm m,NnNn),),即每个存储单元二进制位数的扩展。即每个存储单元二进制位数的扩展。例如:用例如:用1616KBKB1 1的芯片组成的芯片组成1616KB KB 8 8的存储器,则连接图如下:的存储器,则连接图如下:RDWRM/IOABA13A0A13A0cs A13A13A0A0D0D6D7DBcs cs 14141414DDD283.4.3 3.4.3 用存储芯片构成主存储器(续)用存储芯片构成主存储器(续)(2 2)字扩展()字扩展(MmMm,N Nn)n),即存储单元数的扩展。例如:用即存储单元数的扩展。例如:用8 8KBKB8 8的芯片组成
18、的芯片组成6464KB KB 8 8的存储器,则连接图如下的存储器,则连接图如下RDWRM/IOA13A0A12A0cs A12A12A0A0D0D7cs cs 13131313DDDA12A14A15888U1U0U738译码器111001000293.4.3 3.4.3 用存储芯片构成主存储器(续)用存储芯片构成主存储器(续)(3 3)字位同时扩展)字位同时扩展 (MmMm,Nn)Nn)。例如:用例如:用8 8KBKB4 4的芯片组成的芯片组成1616KB KB 8 8的存储器,则连接图如下的存储器,则连接图如下RDWRA13A12A0A12A0cs A12A12A0A0D0D4D7cs
19、cs 13131313DDDA12A0cs DD3U3U2U1U0444444303.4.3 3.4.3 用存储芯片构成主存储器(续)用存储芯片构成主存储器(续)v综合例题:综合例题:313.5 3.5 并行存储器并行存储器 除了选择高速器件之外,并行读写是提高存储器性能的一除了选择高速器件之外,并行读写是提高存储器性能的一个有效手段之一,并行存储器基本思想是通过重复设置硬件为个有效手段之一,并行存储器基本思想是通过重复设置硬件为代价,实现并行存取来换取速度的提高,可以分为以下几类:代价,实现并行存取来换取速度的提高,可以分为以下几类:v 双端口存储器双端口存储器v 多模块存储器多模块存储器
20、单体多字存储器单体多字存储器 多体单字存储器多体单字存储器v 相联存储器相联存储器323.5.1 3.5.1 双端口存储器双端口存储器v基本思想基本思想:存储器采用两个端口,再设置两套读写装置同时访问内存,从而提高了整个计算机系统的效率。v双端口存储器的结构框图:双端口存储器的结构框图:MARMDR读写电路译码器存储体ABDBCBMARMDR读写电路译码器ABCBv说明:说明:两个访问端口独立工作互不干扰,只有当两个端口 试图在同一时间内访问同一地址单元时,才会发生冲突。333.5.2 3.5.2 多模块存储器多模块存储器v 基本思想:基本思想:并行设置多个存储模块,在一个存取周期内,多个存储
21、模块同时存取多个字以提高整体速度。v 单体单体多字多字存储器存储器AB地址寄存器译码器M0M1MN1W位W位W位NW位DB只有一套地址寄存器和地址译码器有多个容量相同的存储模块343.5.2 3.5.2 多模块存储器多模块存储器(续续)v多体单字交叉存取方式多体单字交叉存取方式MAR0MAR1MAR2MAR3MDR0MDR1MDR2MDR304M0K05M1K126M2K237M3K3ABDB1说明说明:多存储模块多读写装置交叉编址353.5.3 3.5.3 相联存储器相联存储器v 相联存储器的概念相联存储器的概念v 相联存储器的组成相联存储器的组成 存储体,存放信息的部件。存储体,存放信息的
22、部件。输入检索寄存器,用来存放待检索的内容。输入检索寄存器,用来存放待检索的内容。屏蔽寄存器,用来决定输入检索寄存器的哪些项参与检索比较,屏蔽寄存器,用来决定输入检索寄存器的哪些项参与检索比较,哪些项不参与。哪些项不参与。比较器,是相联存储器的核心,由字比较器和位比较器两部分组成。比较器,是相联存储器的核心,由字比较器和位比较器两部分组成。字匹配寄存器,用来记录比较结果。字匹配寄存器,用来记录比较结果。数据寄存器,用来存放某个单元的内容。数据寄存器,用来存放某个单元的内容。地址寄存器和地址译码器,使相联存储器同时具有按地地址寄存器和地址译码器,使相联存储器同时具有按地 址查找的一般功能。址查找
23、的一般功能。363.5.3 3.5.3 相联存储器(续)相联存储器(续)v 相联存储器结构框图:相联存储器结构框图:输入检索寄存器屏蔽寄存器M比较器2mN存储体数据寄存器地址寄存器地址译码器字匹配寄存器2m12m1N1N1N100m0000N10373.6 3.6 存储体系存储体系本节主要内容有:本节主要内容有:v高速缓冲存储器高速缓冲存储器CacheCache 地址的映像与变换地址的映像与变换 全相联方式全相联方式 直接方式直接方式 组相联方式组相联方式 替换算法替换算法v 虚拟存储器虚拟存储器 虚拟存储器的管理方式虚拟存储器的管理方式 虚拟存储器的工作过程虚拟存储器的工作过程v 三级存储体
24、系三级存储体系383.6.1 3.6.1 高速缓冲存储器高速缓冲存储器CacheCache1 1、高速缓冲存储器、高速缓冲存储器CacheCache的的一般概念一般概念v 程序执行的局部性原理:程序执行的局部性原理:CPU对内存的访问在一段相对较短的时间内间隔往往集中于某个局部,特别是碰到循环程序、反复调用的子程序、递归程序等就更是如此,这就是所谓的“程序执行的局部性原理”。v CacheCache的引入:的引入:由于程序执行的局部性原理,在CPU和主存之间引入速度更快的存储器使得CPU访问内存的大多数操作是在这个快速存储器进行,这样使访内的速度大大提高,该存储器称高速缓冲存储器(Cache
25、Memory)v Cache CacheMMMM层次结构图及访内过程:层次结构图及访内过程:CPU高速缓存Cache主存MM辅助硬设备393.6.1 3.6.1 高速缓冲存储器高速缓冲存储器CacheCache(续)续)2 2、地址的、地址的映像映像与与变换变换 地址映像与变换的三种基本方式:地址映像与变换的三种基本方式:v 全相联方式全相联方式v 直接方式直接方式v 组相联方式组相联方式根据某种规则或算法把信息从主存复制到Cache的过程。当执行程序时将主存地址变换为Cache地址的过。403.6.1 3.6.1 高速缓冲存储器高速缓冲存储器-地址的映像与变换(地址的映像与变换(1)(1 1
26、)全相联方式)全相联方式v 映像方法映像方法:主存和Cache以同样大小分块。假设假设某机内存16MB,Cache为8KB,按512B划分块,那么主存将划分为32K块,主存的地址为15位,Cache的块地址为4位,块内地址均为9位。其地址结构如下其地址结构如下:15位9位主存块号块内地址v 映像规则映像规则:内存中的任何一块可以装入Cache的任何一块中。v 地址变换机构地址变换机构:由相联存储器担任。(相联存储器的单元个数与Cache的块数一致且对应,如本例16个;其存放内容是Cache对应块所存放的主存的块号;因此单元的宽度与主存块地址一致。413.6.1 3.6.1 高速缓冲存储器高速缓
27、冲存储器-地址的映像与变换(地址的映像与变换(1)v 优点:优点:主存的块装入Cache的位置没有限制,只要Cache有空闲块便可装入,只有全部装满才会出现冲突,根据算法只要淘汰Cache中任何一块就可装入新块,使Cache的存储空间得到最充分的利用。v 不足:不足:无法直接从主存块号中获取Cache块号,使得其地址变换机构相对复杂,使用了相联存储器。v 全相联地址映像和变换的过程全相联地址映像和变换的过程(以上例说明):当CPU给出24位的主存地址,地址变换机构根据高15位地址(主存块号)进行相联比较,如果找到(命中),则将该主存块号所在的相联存储器的单元块号作为Cache的块号,与块内地址
28、(低9位)拼在一起成为Cache地址,这就完成了由主存到Cache的地址变换。如果找不到(不命中)说明该主存块还未装入,则CPU访问主存,同时由辅助硬设备将该块调入Cache。如下图:423.6.1 3.6.1 高速缓冲存储器高速缓冲存储器-地址的映像与变换(地址的映像与变换(1)4位9位主存地址Cache块号块内地址Cache地址相联存储器相联比较Cache主存命中15位9位主存块号块内地址第0块第1块第x块第0块第1块第m块第15块第32767块x块01m全相联方式地址映象及变换全相联方式地址映象及变换433.6.1 3.6.1 高速缓冲存储器高速缓冲存储器-地址的映像与变换(地址的映像与
29、变换(2)(2 2)直接方式)直接方式v映像方法:映像方法:先将主存和Cache以同样大小分块,主存再按Cache的大小分为大小相等的区。主存地址结构如下(例题同上):v映像规则映像规则:主存的任意一块只能放入Cache的任意一块中,即主存第N区的第i块只能装入到Cache的i块。v地址变换机构地址变换机构:由于不需要相联比较,所以一般存储器即可担任。其单元个数与Cache的块数一致且对应,如本例16个,其存放内容是主存的区号。11位4位9位主存区号区内块号 块内地址443.6.1 3.6.1 高速缓冲存储器高速缓冲存储器-地址的映像与变换(地址的映像与变换(2)v 直接方式的地址变换过程直接
30、方式的地址变换过程(以上例说明):当当CPUCPU给出给出2424位的主存地址,地址变换机构根据中间位的主存地址,地址变换机构根据中间4 4位区位区内块号按地址访问地址变换机构,若该单元内容与主存区号,即内块号按地址访问地址变换机构,若该单元内容与主存区号,即高高1111位地址一致,则命中。这时主存地址中间位地址一致,则命中。这时主存地址中间4 4位所表示的区内位所表示的区内块号也就是块号也就是CacheCache块号。块号。4 4位块号和位块号和9 9位块内地址拼成的位块内地址拼成的1313位地址位地址就已经是就已经是CacheCache地址了。如果没有命中则地址了。如果没有命中则CPUCP
31、U访问主存,同时将访问主存,同时将该块调入该块调入CacheCache并修改地址变换机构相应单元的内容。如下页图并修改地址变换机构相应单元的内容。如下页图所示:所示:4511位4位9位主存区号区内块号 块内地址Cache第Y块区号X第0块第0块第0块第0块第1块第15块第1块第1块第1块第15块第15块第15块第15块第0块第1块第0区第1区第X区第2047区Y0115比Cache地址命中按地址查找第Y块直接方式地址映象及变换直接方式地址映象及变换463.6.1 3.6.1 高速缓冲存储器高速缓冲存储器-地址的映像与变换(地址的映像与变换(2)v直接方式的特点:直接方式的特点:优点:地址变换简
32、单,若命中无需变换,可直接由主存地址优点:地址变换简单,若命中无需变换,可直接由主存地址中提取到中提取到CacheCache地址,且地址变换机构是一个按地址访问的一般地址,且地址变换机构是一个按地址访问的一般存储器,结构简单。存储器,结构简单。不足:太不灵活,主要表现在主存区号不同,但区内块号相不足:太不灵活,主要表现在主存区号不同,但区内块号相同的块无法同时装入同的块无法同时装入CacheCache,即使别的块空这也不能用,当某段即使别的块空这也不能用,当某段时间恰巧要访问主存不同区号但相同块号的两块数据时,就会出时间恰巧要访问主存不同区号但相同块号的两块数据时,就会出现两块数据频繁调入调出
33、的不合理现象,称之为现两块数据频繁调入调出的不合理现象,称之为“抖动抖动”,这种,这种现现象势必一方面降低了象势必一方面降低了CacheCache的命中率,另一方面的命中率,另一方面CacheCache的空间得的空间得不到充分利用不到充分利用。473.6.1 3.6.1 高速缓冲存储器高速缓冲存储器-地址的映像与变换(地址的映像与变换(3)(3 3)组相联方式组相联方式v 映像方法:是上两种方式的折中。即主存和映像方法:是上两种方式的折中。即主存和CacheCache按同样大按同样大 小分块,主存按小分块,主存按CacheCache大小分区,主存和大小分区,主存和CacheCache按同样块数
34、分按同样块数分 组,如两块一组。组,如两块一组。主存地址结构如下:主存地址结构如下:11位3位9位主存区号区内组号块内地址1位组内块号483.6.1 3.6.1 高速缓冲存储器高速缓冲存储器-地址的映像与变换(地址的映像与变换(3)v 映像规则:主存任何一区的第映像规则:主存任何一区的第n n组只能映像至组只能映像至CacheCache的第的第n n组组 (直接方式),但主存任何一组的两块却可映像至(直接方式),但主存任何一组的两块却可映像至CacheCache的相的相 应组两块中的任何一块中去(全相联方式)。组间直接方式,应组两块中的任何一块中去(全相联方式)。组间直接方式,组内全相联方式。
35、组内全相联方式。v 地址变换机构:介于按地址访问的存储器和相联存储器之间地址变换机构:介于按地址访问的存储器和相联存储器之间 的混和存储器。的混和存储器。v 地址变换过程地址变换过程 (如下图)(如下图):49Cache第K块区号X第0块第0块第0块第0块第1块3第1块第1块第1块第0块第1块第0块第1块第0区第X区第2047区YK0115比命中按地址查找第Z块第0组第7组第0组第Y组第0组第Y组第7组第0块第1块19Cache地址Z11位3位9位主存区号区内组号块内地址1位组内块号503.6.1 3.6.1 高速缓冲存储器高速缓冲存储器Cache-Cache-替换算法替换算法 3.3.替换算
36、法:替换算法:当当CacheCache已装满,随着程序的执行,访问频繁的已装满,随着程序的执行,访问频繁的活动区会逐渐迁移,造成活动区会逐渐迁移,造成CacheCache不命中,这时必须从内存装入新不命中,这时必须从内存装入新的待执行的块。的待执行的块。常用替换算法:常用替换算法:v先进先出算法先进先出算法FIFOFIFO(First In First OutFirst In First Out)v最近最久未使用算法最近最久未使用算法LRULRU(Least Recently UsedLeast Recently Used)513.6.1 3.6.1 高速缓冲存储器高速缓冲存储器Cache-C
37、ache-替换算法(续)替换算法(续)(1)先进先出算法先进先出算法FIFOFIFO:这种算法是对进入Cache的块按先后顺序排队,需要替换时,先淘汰最早进入的块。例题:例题:假设Cache分三块,采用全相联映射方式,若CPU访问页面流如下,则Cache的变化情况及命中情况:1 1 2 1 3 2 1 3 2 1 3 2 4 3 2 4 3 5 4 3 5 4 1 5 4 1 5 4 1 5 2 1 5 2 1 31 2 3 2 1 4 5 3 1 4 5 2 3 523.6.1 3.6.1 高速缓冲存储器高速缓冲存储器Cache-Cache-替换算法(续)替换算法(续)(2 2)最近最久未使
38、用算法)最近最久未使用算法LRULRU:该算法是将最近最久未使用的块替换出去。例题:例题:假设Cache三块,采用全相联映射方式,若CPU访问页面流如下,则Cache的变化情况及命中情况如下:1 2 3 2 1 4 5 3 1 4 5 2 3 1 1 2 1 3 2 1 3 2 1 3 2 1 4 2 1 4 5 3 4 5 3 1 5 3 1 4 5 1 4 5 2 4 5 2 3 注意注意:一般而言增加Cache的容量显然会提高命中率但两者之间并非正比关系533.6.1 3.6.1 高速缓冲存储器高速缓冲存储器CacheCache(续)续)4 4、MM-CacheMM-Cache层次工作过
39、程示意图:层次工作过程示意图:DBMMCPUABCache块号 块内地址块内地址主存块地址地址变换替换算法部件Cache存储器多字高速总线不命中(已满)不命中(未满)命中543.6.2 3.6.2 虚拟存储器虚拟存储器1.1.虚拟存储器的基本概念虚拟存储器的基本概念:为了克服内存空间的不足,以及实现多道程序运行技术,从而引入大容量、低价格的辅助存储器。平时各种程序和数据均保留在辅存中,当程序运行时,将当前即将运行的部分由辅存调入主存。虚拟存储技术是在主存和辅存之间,增加软件及必要的硬件,使主、辅存之间的信息交换,程序的再定位,地址的转换都能自动进行,使两者形成一个有机的整体。虚拟存储器的原理框
40、图如下:CPU主存MM虚存VM辅助软硬设备553.6.2 3.6.2 虚拟存储器(续)虚拟存储器(续)2.2.虚拟存储器的管理方式虚拟存储器的管理方式 在虚存中,程序是分别存放在主存与辅存中,都占有实际的主存区域与辅存区域。虚地址与主、辅存地址间的对应关系,称为地址映像地址映像。当访问主存时要进行虚地址到实地址的转换。根据地址映像的方式不同,虚拟存储器可以有三种管理方式:v 段式管理v 页式管理v 段页式管理563.6.2 3.6.2 虚拟存储器虚拟存储器-管理方式(管理方式(1 1)(1 1)段式管理)段式管理v 程序按其逻辑功能分段。各程序段的大小不等,其逻辑程序按其逻辑功能分段。各程序段
41、的大小不等,其逻辑 地址均从地址均从0 0开始。开始。v 装入时按段分别装入内存,运行时按段进行虚实地址转换。装入时按段分别装入内存,运行时按段进行虚实地址转换。v 每一个程序在内存中都对应一个段表,表目和每个逻辑段每一个程序在内存中都对应一个段表,表目和每个逻辑段 一一对应,记录了各段存入内存的实地址及其它有关信息一一对应,记录了各段存入内存的实地址及其它有关信息v 段式管理地址映像过程如下页:段式管理地址映像过程如下页:57段式管理地址映像过程段式管理地址映像过程段表基址寄存器段表首地址虚段号装入位012341000H12200H5000H11100AA+X段内地址实地址MM第一段第三段第
42、二段1000H5000H12200H583.6.2 3.6.2 虚拟存储器虚拟存储器-管理方式(管理方式(1 1)v 段式管理的优缺点:段式管理的优缺点:优点:有利于程序的运行,便于实现信息共享和存储保护。优点:有利于程序的运行,便于实现信息共享和存储保护。缺点:随着程序的运行,会在主存空间产生较多缺点:随着程序的运行,会在主存空间产生较多“碎片碎片”。593.6.2 3.6.2 虚拟存储器虚拟存储器-管理方式(管理方式(2 2)(2 2)页式管理)页式管理v 辅存和主存空间以大小相同的存储空间分页,辅存的页为辅存和主存空间以大小相同的存储空间分页,辅存的页为 虚页,主存的页为实页。主、辅存地
43、址格式如下:虚页,主存的页为实页。主、辅存地址格式如下:v 页式管理在内存中为每个用户设置一页表,页表记录了虚页式管理在内存中为每个用户设置一页表,页表记录了虚 地址各页在内存中的位置。页表的起始地址存放在页表基地址各页在内存中的位置。页表的起始地址存放在页表基 址寄存器中址寄存器中。v 页式管理地址映像过程如下页图:页式管理地址映像过程如下页图:实页号K页内地址虚页号X页内地址60页式管理地址映像过程页式管理地址映像过程 页表基址寄存器页表首地址虚页号实页号装入位0X0K01AA+X虚页号X页内地址MMn-2n-101实页号K页内地址613.6.2 3.6.2 虚拟存储器虚拟存储器-管理方式
44、(管理方式(2 2)v 页式管理的优缺点:页式管理的优缺点:优点:便于与主存辅存间的调进调出,有利于主存空间的充分利用。优点:便于与主存辅存间的调进调出,有利于主存空间的充分利用。缺点:难以实现存储保护和存储共享。缺点:难以实现存储保护和存储共享。623.6.2 3.6.2 虚拟存储器虚拟存储器-管理方式(管理方式(3 3)(3 3)段页式管理(是前两种方式的综合)段页式管理(是前两种方式的综合)v 将程序先按逻辑功能分为段。将程序先按逻辑功能分为段。v 将每段分为页,所以虚地址包括了段号、段内页号、页内将每段分为页,所以虚地址包括了段号、段内页号、页内 地址。实地址只有实页号和页内地址。其地
45、址格式如下:地址。实地址只有实页号和页内地址。其地址格式如下:v 程序在内存中分别建立段表和页表。程序在内存中分别建立段表和页表。v 段页式管理地址映像过程如下页图:段页式管理地址映像过程如下页图:实页号 页内地址实存地址实存地址:虚段号X 段内虚页号页内地址虚虚 地地 址址:63段页式管理地址映像过程段页式管理地址映像过程段表基址寄存器段表首地址A虚段号 页表首地址 装入位0123B0110A:虚段号X段内虚页号页内地址虚地址虚页号实页号 装入位01230110B:实页号 页内地址页表段表主存643.6.2 3.6.2 虚拟存储器虚拟存储器-管理方式(管理方式(3 3)v 段页式管理优缺点:
46、段页式管理优缺点:优点:兼有段、页式管理的优点。优点:兼有段、页式管理的优点。缺点:要经过三次读内存才能完成虚实地址的转换。第一次读段表得页缺点:要经过三次读内存才能完成虚实地址的转换。第一次读段表得页 表首地址,第二次读页表得实页号,第三次才形成实地址读得数据。降表首地址,第二次读页表得实页号,第三次才形成实地址读得数据。降 低了地址变换的速度。低了地址变换的速度。653.6.2 3.6.2 虚拟存储器虚拟存储器-工作过程工作过程(1)在实际虚实地址变换中,必须考虑地址变换的速度,还有程序的调入调出处理,除了段表和页表外,还有以下3个部件:v 快表快表:位于Cache中,由相联存储器组成,存
47、放当前最“活跃页”的地址。其表目格式与内容与页表完全相同,记录了虚地址与实地址的对应关系,其地址转换过程如下:虚页号页内地址虚存页号实存页号虚存地址实存地址实页号页内地址相联比较器相联比较663.6.2 3.6.2 虚拟存储器虚拟存储器-工作过程(续)工作过程(续)v 帧页表:帧页表:记录当前内存使用情况,用来对主存进行管理,它 位于主存,其格式见下表:主存实页号 占用位程序号虚页号其他012n-1673.6.2 3.6.2 虚拟存储器虚拟存储器-工作过程(续)工作过程(续)v 外页表:外页表:用来登记程序虚页号与辅存地址的对应关系,它位 于主存。虚页号辅存地址012m-1柱面号盘面号扇区号装
48、入位683.6.2 3.6.2 虚拟存储器虚拟存储器-工作过程(续)工作过程(续)(2 2)虚拟存储器的工作过程)虚拟存储器的工作过程 一个多用户页式管理的虚拟存储器的工作过程如下页图所示:例例 题题69用户名虚存页号页内地址页内地址实存页地址主存实地址主存辅存装入页替换页替换算法主存已满主存未满辅存实地址帧页表外页表内页表快表内页表不命中快表不命中更新快表命中页表命中页表不命中I/O通道703.6.3 3.6.3 三级存储体系三级存储体系v 多级存储体系是为了解决存储器容量、速度、价格之间的矛多级存储体系是为了解决存储器容量、速度、价格之间的矛 盾而引入的。盾而引入的。v 三级存储体系由高速
49、缓冲存储器三级存储体系由高速缓冲存储器CacheCache、主存储器主存储器MMMM及属于外及属于外 存储器的磁盘、磁带、磁盘组成。存储器的磁盘、磁带、磁盘组成。v CacheCache是最接近是最接近CPU CPU 的存储级,其速度最快、容量最小而单位的存储级,其速度最快、容量最小而单位 成本最高;辅存是最下层的存储器,其速度最慢而容量最大,成本最高;辅存是最下层的存储器,其速度最慢而容量最大,单位成本最低;主存位于两者之间。单位成本最低;主存位于两者之间。v Cache-MMCache-MM层次之间的地址变换和替换算法完全由硬件完成,层次之间的地址变换和替换算法完全由硬件完成,以满足地址高
50、速变换的要求;以满足地址高速变换的要求;MM-VMMM-VM层次以软件为主,由软层次以软件为主,由软 件、硬件联合完成。件、硬件联合完成。v Cache-MMCache-MM层次的信息传输以块为单位(几十到几千字节);层次的信息传输以块为单位(几十到几千字节);MM-VMMM-VM层次的信息传输是以段或页为单位(几到十几千字节层次的信息传输是以段或页为单位(几到十几千字节 之间)之间)71虚拟存储器VM高速缓存 Cache 主存MM(磁盘、磁带、光盘)辅助硬件设备辅助软硬件设备块(几十到几千字节)段、页(1千字节到十几千字节)三三 级级 存存 储储 体体 系系属中央处理机属主机属外部设备723