第3章 存储器体系结构ppt课件.ppt
《第3章 存储器体系结构ppt课件.ppt》由会员分享,可在线阅读,更多相关《第3章 存储器体系结构ppt课件.ppt(110页珍藏版)》请在三一办公上搜索。
1、第3章 存储器体系结构,内容提要:,随着计算机和微电子技术的发展,存储器无论是其器件还是体系结构都发生了很大的变化。本章首先介绍存储器层次结构、性能参数、多体并行存储器及磁盘阵列的基本概念与组成方式,然后讲述高速缓冲存储器Cache的组成与工作原理、虚拟存储器的构成与管理方式以及存储器保护措施。重点是存储器性能参数、多体并行存储器、磁盘阵列的组成方式、Cache的组成原理与地址映象、Cache的置换策略与主存更新、虚拟存储器组成与管理方式。难点是Cache的地址映象、Cache的置换策略与主存更新、虚拟存储器的组成与段页式管理。,第3章 存储器体系结构,3.1 概 述3.2 高速缓冲存储器Ca
2、che3.3 虚拟存储器3.4 存储器保护措施,3.1 概 述,3.1.1 存储器的层次结构3.1.2 基本概念与性能参数3.1.3 多体并行存储器3.1.4 磁盘阵列,3.1.1 存储器的层次结构,存储器是计算机的主要部件之一,其容量、速度、价格是存储器设计时所要考虑的三个要素。近年来出现了许多种类型的存储器,它们各有特色,有的速度快,但容量小;有的容量大,但速度慢。一般而言,速度快的存储器容量小,位价格高。目前,存储器按照存储介质可分为半导体存储器、磁表面存储器和光存储器等。其中半导体存储器容量小,速度快,位价格高,常用作主存。磁表面存储器有磁盘和磁带,属于非易失存储器,容量大,位价格低,
3、信息可以长久保存。光存储器容量也很大,位价格也很低,信息也可以长久保存。,1.存储器访问中的局部性原理 研究发现,程序在运行的过程中(8090)%时间是在执行(1020)%的程序代码,即局部性原理。表现为两个方面。(1)时间局部性:如果一个存储项被访问,则该存储项可能很快再次被访问。(2)空间局部性:如果一个存储项被访问,则该项及其相邻项可能很快被一起访问.形成这种局部性的原因在于程序的顺序执行和所包含的循环程序。2.存储器的层次结构 为满足CPU对高速大容量存储器的需求,又不过高地增加成本。无论是巨型机、大型机、中小型还是微型计算机,都采用层次化的存储器体系结构,其表示如图3.1所示。,图3
4、.1 多层存储器结构,寄存器一般与CPU制作在一起,其速度与CPU一致,但数量有限。高速缓冲存储器(Cache)一般由双极型器件构成,容量小,界于CPU和主存储器之间,速度与CPU匹配,用来存放(1020)%的常用程序或数据。主存多由半导体存储器构成,与CPU直接连接,容量较大。外存由非易失的存储器构成,容量很大,有时也称为海量存储器,用来存储暂不执行的程序或不被处理的数据。,3.1.2 基本概念与性能参数,1.基本概念 在CPU工作时,首先从Cache中读取指令或数据。如果能从Cache获得指令或数据,称为命中(Hit);否则称为未命中或者失效(Miss),这时需要访问主存,从主存中获取指令
5、或数据,同时传送到上层的Cache中。若在主存中未能获取指令或数据,则称访问主存失效或未命中,这时再去访问外存。一般情况下,上层所存储的信息是下层存储器中的一个子集,或者说是下层的映像。在Cache与主存之间传送信息,常以块或者页为单位;在主存与外存之间常以文件为单位。为了说明各层之间的关系和一些基本概念,下面以图3.2为例进行说明。,图3.2 存储器层次关系,图中Mi表示不同的存储器,靠近CPU的(M1)速度快,容量小,位价格高;远离CPU的(Mn)速度慢,容量大,位价格低。若以Si、Ci、Ti分别表示存储器Mi的容量、位价格和访问时间,则:SiSi+1CiCi+1TiTi+1 根据时间局部
6、性,Mi级存储器一般只存放Mi+1级中近期使用过的数据块或页;根据空间局部性,在从Mi+1级存储器读取一个字并送往Mi级时,一般把该字所在的块或页整体送往Mi级,以提高CPU访问Mi级时的命中率。,2.性能参数 常用参数有4个,即命中率、等效访问时间、平均位价格和访问效率,分别用H、T、C和e表示。(1)命中率H 通常是把在Mi级访问成功的概率称为该级的命中率,用H来表示,一般用模拟的方法来确定,即测试程序,分别统计出访问成功的次数N1和不成功的次数N2,则命中率为:,若用F表示失效率或未命中率,则F=1-H,(2)等效访问时间T 等效访问时间也称为访问周期。以主存-辅存二级存储器系统为例,T
7、1表示访问M1成功所用的时间(即一个读/写周期);Tm表示访问失效所用的时间,它不仅是访问M2所用的时间T2,而且要从M2中读出一个数据块(或页)送入M1,再从M1中读出所需要的字,因此Tm应当包括这一过程的全部时间。这样,主存-辅存构成的二级存储器系统的等效访问时间为:T=HT1+(1-H)Tm(3.1)当命中率H近似于1时,等效访问时间近似于T1。但是,由于在上一级存储器中访问的命中率一般都很高,为了简单起见常用访问M2的时间T2来代替Tm。这样 T=HT1+(1-H)T2,对于上述二级存储器,访问效率可表示如下:(3.4),(3.3)(4)访问效率,(3)平均位价格 对于二级存储器系统,
8、若用C1和S1表示M1的位价格和容量,C2和S2表示M2的位价格和容量,则平均位价格为:,【例3.1】设有某台计算机是由高速缓冲存储器Cache与主存构成二级存储器系统,其中Cache的存取周期T1=50nS,主存的存取周期T2=400nS,访问Cache的命中率为98%。试问该存储器系统的等效访存时间T是多少?访问效率是多少?解:已知T1=50nS,T2=400nS,命中率H=0.98,使用简单算式得:T=HT1+(1-H)T2=0.9850+(1-0.98)400=57nS e=T1/T=50/570.877,3.1.3 多体并行存储器,为使存储器的速度能适应CPU的需求,已形成不同的体系
9、结构。主要有以下几种:(1)单体单字存储器 是最早的一种结构形式,一个存储体,一个地址对应一个字(或字节),字的位数与数据线的宽度相同,每访问一次存储器,可读/写一个字(或字节)。(2)单体多字存储器 是一种单体单字存储器的一种改进结构,数据线的宽度是存储器单元字(或字节)长的整倍数。每访问可同时读/写多个字(或字节),提高了访存速度,即支持猝发传送方式。,(3)多体单字交叉存储器 存储器由多个存储体构成,每个存储体中的字(字节)长与数据线相同,每次访问仅读/写一个字(或字节)。数据存储的方式有两种,一种是按存储体连续存放;另一种是把连续数据交叉存放在各个存储体中。多个存储体可按流水线的方式启
10、动,有利于提高整体速度,支持多处理机系统。(4)多体多字交叉存储器 存储器也是由多个存储体构成。但是数据线是每一个存储体字(或字节)长的整倍数,每访问一次存储器,可同时读/写多个字(或字节)。多个存储体按流水线的方式启动,提高了存储器的整体速度,支持猝发传送方式,支持多处理机系统。,1.高位地址交叉多体存储器 高位地址交叉多体存储器的逻辑结构如图3.3所示,体内地址连续,设有n位,容量为2n。若总体地址有m位,其高位地址经译码,选择某一存储体。存储体的个数最多有2m-n个,通过对m-n位的高位地址译码选择不同的存储体。,图3.3 高位地址交叉多体存储器的逻辑结构图,图3.4 低位地址交叉多体存
11、储器的逻辑结构图,2.低位地址交叉多体存储器 低位地址交叉多体存储器如图3.4所示,用低位地址译码选择不同的存储体,而高位地址用于内部寻址。若总体地址有m位,低位地址有n位,则可连接2n个存储体,体内地址空间为2m-n。,若设存储器的字存取周期为t0,由k个子周期组成,即t0=k。如果使用k个存储体交叉存储,再按时间依次启动k个存储体,则构成流水线存取方式,其示意如图3.5所示,其中k=4。,图3.5 多体交叉存储体流水线读/写操作示意,从整体上看,提高了存取速度,在访问存储器不冲突的情况下,3之后每隔时间就可读/写一个字。连续读/写k个字需要的时间为t0+(k-1);顺序读/写需要的时间为k
12、t0。显然,在不发生访问冲突时按流水线访问,其带宽是单体存储器的k倍。,3.1.4 磁盘阵列,1.磁盘 磁盘以其大容量、低成本、工作稳定可靠和存储信息的非易失性等特点,一直是各类计算机必不可少的外部辅助存储器。按照载体,分为硬盘和软盘;按照尺寸,常见的有14吋、10.8吋、5.25吋、3.5吋、2.5吋、1.8吋和1.3吋等。除了尺寸和结构之外,衡量磁盘性能的技术指标主要有以下6条。(1)记录密度 磁盘信息是记录在磁头掠过的同心圆上,分为道密度、位密度和面密度。显然:面密度=道密度位密度。过去,硬盘的道密度多在1257r/i之上,位密度多在23980b/i之上,面密度在100Mb/i2之上。现
13、在,面密度已经达到1020Gb/i2。且面密度每经1.5年翻一番。(2)存储容量 磁盘在出厂时已经格式化,早期每个扇区记录512个字节的数据。因此:硬盘容量=柱面数磁头数(扇区数/道)512B现在,每一个扇区记录的字节数远不止512个字节,已有1KB、2KB、4KB和8KB等多种字节数。,【例3.2】已知Quantum的LSP 540AT硬盘机有1120个柱面、16个磁头,每道59个扇区,试求总的容量。解:在硬盘中,柱面数对应的是每面的磁道数,磁头数对应的是盘面数,若设每个扇区记录512个字节,则:总容量=11201659512B=541 327 360B54MB目前,硬盘的容量已经达到几百G
14、B甚至几TB以上。上述方式是在每一条磁道上记录相同的数据位,显然内道信息密度大,外道信息密度小。目前已有改进,即把盘面上的若干条相邻磁道分为一组,称为分带记录。每一个记录带内的各条磁道有相同的扇区数,各分带之间的磁道扇区数不同,靠近内部的分带磁道扇区数小,靠近外部的分带磁道扇区数大。(3)平均寻道时间是指磁头定位到所要寻找的磁道上时所用的时间,常以磁头沿半径方向运动一半所用的时间来表示。过去一般在8.5mS左右,现在可减小到4.2mS。,(4)旋转延迟时间 是指磁头定位到所要找的扇区所用的时间,常以磁头沿周长运动1/2周所用的时间。目前多采用的7200r/min的磁盘机,旋转延迟时间为4.17
15、mS。对于10000r/min和15000r/min的磁盘机,旋转延迟时间仅为3mS和2mS。(5)传输时间 是指数据传输所用的时间,它不仅与电机的转速、数据长度有关,而且与磁盘接口电路板有关。目前,常以传输率来表示,比如100MBps、200MBps等。(6)控制延迟时间 是指磁盘控制器从收到读/写磁盘命令到启动磁头移动所用的时间,主要由磁盘接口电路板决定。综上所述,访问磁盘数据的时间是寻道时间、旋转延迟时间、控制延迟时间和传输时间之和。,【例3.3】设有一个磁盘,其平均寻道时间为5ms,传输率为10MBps,控制开销为2ms,驱动电机的转速为7200r/min,求读/写一个512字节的扇区
16、所用的时间。解:根据题意:平均寻道时间为5ms,传送512字节数据的传输时间为512/10=51.2s,旋转延迟时间为 60/72000.5=4.17ms,控制延迟时间为2ms,则读/写一个512字节的扇区所用的时间为:5ms+51.2s+4.17ms+2ms=11.22ms。,2.磁盘阵列的概念在外部辅助存储器中磁盘阵列引人注目,全称廉价冗余磁盘阵列RAID(Redundant arrays of inexpensive disk),是由多台低成本的小型磁盘构成同步化的磁盘阵列,数据展开存放在多台磁盘上,既可提高数据传输的带宽,又可利用冗余技术提高可靠性,类似于存储器多体交叉存储。而且容量大
17、,数据传输率高,功耗低,体积小,成本低,便于维护。其关键技术是多台磁盘的同步控制,其逻辑框图如图3.6所示。,其中控制处理器由微处理器构成,是磁盘阵列的控制中心,它接收和分析主机的操作命令,调度和管理磁盘阵列通路,控制设备命令的执行。数据通路是在控制处理器的控制下,实现数据的分配,集中,缓冲,奇/偶校验,数据校正和通道重构等操作。,图3.6 磁盘阵列结构框图,主机接口用来与主机连接,实现主机与磁盘阵列的连接、通信、控制和数据传送等操作。磁盘接口用来与磁盘驱动器连接,一般采用国际化的工业标准,比如SCSI等。在磁盘阵列中各驱动器主轴的旋转有同步与异步之分。同步旋转时,数据按位或者字节分布在各个磁
18、盘上。异步旋转时,数据以块或文件为单位存储在单一磁盘上。3.磁盘阵列的组织形式 1987年加州大学伯克利分校的D.A.Patterson等人提出,并把RAID分成5级。(1)RAID-1镜像磁盘冗余阵列 是把每一个数据块重复存入镜像磁盘中,提高磁盘的可靠性。其冗余度为100%,使容量降低一半,形式简单,成本较高。,(2)RAID-2采用海明码纠错的冗余磁盘阵列 是把数据按位交叉写入多个磁盘中,并进行按位纠错检查。它对数据的读/写涉及到各个磁盘,比镜像磁盘阵列冗余度小,影响小文件的传送速率,较适合于大文件的存储。(3)RAID-3采用奇/偶校验冗余磁盘阵列是把数据按位交叉存储到多个磁盘上,用一个
19、磁盘作为奇/偶校验盘。这种阵列的冗余度小,由于数据顺序交叉存储,适合于大量数据的顺序存储。(4)RAID-4独立传送磁盘阵列一 是把数据按块交叉存储到多个磁盘上,用一个磁盘作为奇/偶校验盘。在数据不冲突的情况下,多个磁盘可以并行读/写数据,适合于小块数据的存储。(5)RAID-5独立传送磁盘阵列二 是另一种独立传送的磁盘阵列,它采用数据块交叉存储和分布冗余校验,数据和校验位分布在各个磁盘上,没有专门的奇/偶校验盘。这种结构冗余度低,支持数据并行读/写,适合于小数据块存储。但是结构复杂,实现起来困难较大。磁盘阵列示意如图3.7所示,,图3.7 磁盘阵列数据信息存储示意图,除了RAID-1之外,其
20、它磁盘阵列都采用数据交叉存储方式,是将数据分布在多个磁盘上,增添校验方式,提高数据存储的可靠性。其中:RAID-2是各数据位交叉存储在多个磁盘中,海明校验码也按位交叉存储在多个磁盘中。RAID-3是各数据位交叉存储在多个磁盘中,奇偶校验位依次存储在另一个磁盘中。RAID-4是按数据块交叉存储多个磁盘上,奇/偶校验码依次存储在另一个磁盘中。这里,位交叉磁盘阵列属于同步旋转阵列,适合于大数据块的存储;块交叉存储阵列一般为异步旋转阵列,适合于小数据块的存储。,3.2 高速缓冲存储器Cache,3.2.1 Cache的基本概念3.2.2 Cache的组成与工作原理3.2.3 地址映象与变换3.2.4
21、Cache置换策略与主存更新方法3.2.5 Cache性能分析,3.2.1 Cache的基本概念,3.2.1 Cache的基本概念高速缓冲存储器Cache具有与CPU相匹配的存取速度,界于CPU和主存之间,其示意如图3.8所示,用来存放频繁使用的程序和数据。,图3.8 Cache 示意图,Cache的容量一般较小,比如1KB1MB,主要存放(1020)%频繁使用的程序或数据。当访问Cache失效时,再去访问主存,并把主存中找到的数据送到Cache中。相反,若Cache中的数据被修改,也要修改主存中的相应单元,以保证Cache与主存的一致性。因此,Cache实际上是主存的一个子集。,一般情况下,
22、Cache与主存传送数据是以块为单位,数据块一般为4128字节,实际上也是Cache与主存之间的映像单位。访问Cache的时间一般是访问主存时间的1/41/10,命中率一般在90%以上。在访问Cache失效时访问主存,并把主存中读出的数据块传送到Cache中。这时,如果Cache中有空白区域,则直接写入;如果Cache已经写满,则要置换暂时不用的数据块。至于置换哪一块,有多种方法,即置换策略,将在3.2.4节介绍。如今,在许多CPU中设有一级或者二级Cache。这样与CPU外部Cache 结合,可构成二级或者三级Cache系统。,3.2.2 Cache的组成与工作原理,Cache被分割成大小相
23、等的块,也称为字块,主存以相同大小的块与之对应。这样主存地址可分为块地址(也称为块号)和块内地址,Cache地址也分为块号和块内地址。由于块的大小相同,块内地址相同。但是块号不一定相同,需要通过映像来说明二者之间的对应关系,也称为地址变换。,图3.9 Cache的组成原理,Cache的基本结构如图3.9所示,其中主存-Cache地址映象与变换机制用来确定主存块是否在Cache中。,CPU访问主存储器时输出地址,Cache控制器将其高位地址(即块号)送地址映像与变换机制,以确定是否命中。如果命中,从中获取相应Cache的块号送Cache地址寄存器的高位,同时主存地址中的块内地址送入Cache地址
24、寄存器的低位,然后访问Cache。如果未命中,则访问主存,按块读出所需要的数据,并写入Cache。写入Cache时,如果Cache中有空白存储区(块),则直接写入;如果C ache已经装满,则要置换其中的某一块。置换策略有先进先出、最近最少使用等。如果对Cache写操作,则写入的数据也要写回到主存的相应块中,以保证Cache与主存的一致性。至于什么时候写回主存,有两种方式,一种是立即写回,另一种是置换时写回。,3.2.3 地址映象与变换,地址映象是将主存地址映射到Cache的地址中。不同的Cache结构有不同的映象方式,分别为直接映象、全相联映象和组相联映象。,图3.10 直接映像示意图,1.
25、直接映象与变换 直接映象是把主存划分成与Cache大小相同的区,每区划分成大小相同的字块,如图3.10所示。每一区中的第0块映射到Cache中的第0块,第1块影射到Cache中的第1块。,显然,Cache中的块号与主存各区中的块号一致。因此,只要能够标识Cache中的数据块属于哪一个区就可以了。,故需建造一个直接目录表,也称为块表,用来存放区号。其映象与变换逻辑如图3.11所示,,图3.11 直接映像地址变换逻辑,其中n表示主存块号的位数。目录表的序号与块号一致。地址变换时根据主存的块号在目录表中读出数据,与主存地址中的区号比较。如果不相等,未命中,需访问主存。如果相等,命中,即把主 存的块地
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第3章 存储器体系结构ppt课件 存储器 体系结构 ppt 课件
链接地址:https://www.31ppt.com/p-2133319.html