《第6章主存储器与存储系统.ppt》由会员分享,可在线阅读,更多相关《第6章主存储器与存储系统.ppt(60页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第6章 主存储器与存储系统本章主要内容:本章讲述存储器的分类、主存储器的构成和并行主存储器的思想及设计方法;存储系统的概念及存储系统的构成。重点掌握并行主存储器的构成,Cache的组成原理与地址映射方式、替换算法;掌握段式、页式和段页式虚拟存储器的构成原理、地址映射方式等。6.1 6.1 存储器分类存储器分类6.2 6.2 主存储器的主要技术指标主存储器的主要技术指标6.3 6.3 读写存储器读写存储器6.4 6.4 非易失性半导体存储器非易失性半导体存储器6.5 6.5 主存储器组成主存储器组成6.6 6.6 相联存储器相联存储器6.7 6.7 存储系统与并行存储器存储系统与并行存储器6.8
2、 6.8 高速缓冲器高速缓冲器CacheCache6.9 6.9 虚拟存储器原理虚拟存储器原理6.1 存储器分类(1)随机存储器(RandomAccessMemory,RAM)。(2)只读存储器(ReadOnlyMemory,ROM)。(3)可编程只读存储器(ProgrammableROM,PROM)。(4)可擦除可编程只读存储器(ErasablePROM,EPROM)。(5)电可擦除可编程只读存储器(ElectricallyEPROM,E2PROM)。6.2 主存储器的主要技术指标主存储器的主要性能指标为主存容量、存储器存取时间和存储器存储周期。存储器存取时间(Memory Access T
3、ime)存储周期(MemoryCycleTime)主存储器的速度和容量两项技术指标 6.3 读写存储器6.3.1 静态RAM1静态RAM的基本电路图图6-1 静态静态MOS 6管基本存管基本存储电路储电路 2静态RAM的结构3静态RAM芯片实例Intel21144由2114SRAM构成规定容量的存储器图图6-5 地址译码电路地址译码电路 6.3.2 动态RAM1动态RAM基本存储电路图图6-6 单管动态单管动态RAM的基本存储电路的基本存储电路 2动态RAM的特点及举例3动态RAM的刷新6.4 非易失性半导体存储器6.4.1 只读存储器(ROM)图图6-8 44 MOS ROM 6.4.2 可
4、编程只读存储器(PROM)图图6-9 熔丝式熔丝式PROM基本存储电路基本存储电路6.4.3 可擦除可编程只读存储器EPROM)1EPROM的存储电路图图6-10 P沟道沟道FAMOS管基本存储电路及管基本存储电路及P沟道沟道FAMOS管结构管结构 2典型EPROM芯片的介绍 按上述原理及工艺制造的EPROM芯片常用的有27系列,如2708(1K8)、2716(2K8)、2764(8K8)、27128(16K8)和27512(64K8)等 6.4.4 电可擦除可编程只读存储器(E2PROM)1E2PROM的特点的特点E2PROM(ElectricErasablePROM)突出的优点是可以在线擦
5、除和改写。2E2PROM芯片介绍芯片介绍图图6-11 E2PROM管脚图管脚图 6.4.5 快速擦写存储器(Flash Memory)1Flash的主要性能特点的主要性能特点2Flash的工作原理的工作原理6.4.6 几种新型存储器1高速缓存动态随机存储器(CachedDRAM,CDRAM)2 Direct Rambus接 口 动 态 随 机 存 储 器(DirectRambusDRAM,DRDRAM)3双数据传输率同步动态随机存储器(DoubleDataRateSDRAM,DDRSDRAM)4同步链动态随机存储器(SynchnonousLinkDRAM,SLDRAM)5 虚 拟 通 道 存
6、储 器(Virtual ChannelMemory,VCM)6快速循环动态存储器(FastCycleRAM,FCRAM)7扩展数据输出动态存储器(ExtendedDataOutDRAM,EDODRAM)6.5 主存储器组成存储器扩展有以下三种方法。存储器扩展有以下三种方法。6.5.1 位扩展 指用多个存储器器件对字长进行扩充。位扩展的一般方法是:(1)在给定的芯片中选择合适的芯片,并确定使用数量;(2)将选中芯片的地址线、读写线、片选线对应连接;(3)将数据线单独连接,拼接成要求的数据宽度。例如,使用Intel 2114(1K4)芯片扩展成为1K8容量的存储器。根据要求可以选用2片2114,按
7、如图6-12所示连接。图图6-12 位扩展实例位扩展实例 6.5.2 字扩展 指用多个存储器器件对字数进行扩充。字扩展的一般方法是:(1)在给定的芯片中选择合适的芯片,并确定使用数量;(2)将选中芯片的低位地址线、读写线、数据线对应连接;(3)用高位地址线译码,将输出接至各芯片的片选端。例如,使用Intel 2114(1K4)芯片扩展成为4K4容量的存储器。根据要求可以选用4片2114,按如图6-13所示连接。图图6-13 字扩展实例字扩展实例 6.5.3 字位扩展 如果已有芯片mn若干块,现在要扩展为MN(设Mm,Nn)容量的存储器,则字位扩展共需要mn的芯片数量为:C=字位扩展的一般方法:
8、(1)选择芯片先进行位扩展,扩展成“组”,使得“组”的字长达到要求的字长;(2)再用“组”进行字扩展,按照字扩展的方法将字数增加到目标字数。举例见例6-2。6.6 相联存储器 一般的存储器都是按地址访问的,相联存储器是一种按内容访问的存储器。一般情况下,相联存储器有两种工作方式,即相关方式和随机工作方式。6.7 存储系统与并行存储器6.7.1 存储系统的概念 存储系统是指两个或两个以上速度、容量和价格不相同的存储器用硬件、软件、或软件与硬件相结合的方法连接起来成为一个系统。以由两个存储器构成的存储系统为例:1存储容量S2位价格C 整个存储系统的平均位价格可以这样来计算:3访问周期T 其中,H表
9、示命中率,在程序执行过程中对M1存储器的访问次数为N1(N2同理),T表示整个系统的访问周期。T=H T1+(1H)T2 6.7.2 增加存储器的数据宽度图图6-18 宽字存储器宽字存储器 6.7.3 多体交叉存储技术图图6-19 低位交叉访问存储器的结构低位交叉访问存储器的结构 6.7.4 一种无冲突访问的存储器 产生访问冲突的根本原因主要有两个,一个是程序中的转移指令,二是数据的随机性。下面以一维数组的无冲突访问存储器为例介绍。0号存储体号存储体1号存储体号存储体2号存储体号存储体3号存储体号存储体体内地址体内地址 0a0a1a2a31a4a5a6a72a8a9a10a113图图6-22
10、一维数组的存储方案一维数组的存储方案 6.8 高速缓冲器Cache Cache是为了解决存储器的速度问题而设计的。6.8.1 Cache的工作原理1程序的局部性 在一个较短的时间间隔内,这种对局部范围的存储器地址的频繁访问,而对此范围以外的地址访问甚少的现象,称为程序的局部性。2Cache的基本结构图图6-27 Cache的基本结构的基本结构 3Cache的读写过程的读写过程(1)写直达法(write-through)CPU同时写主存和Cache。(2)回写法(write-back)将CPU要写的信息暂时只写入Cache,并用标志将该块加以注明,直到该块从Cache中替换出去时才一次写回内存。
11、6.8.2 Cache的地址映像与地址变换1直接映像及地址变换直接映像及地址变换 直接映像是将主存中的一块唯一映像到Cache中的一块,而Cache中的一块要对应主存中的若干块。设主存中的块号为B、Cache块的块号为b,若Cache的块数为Cb,则映像关系可以表示为:b=B mod Cb 图图6-28 直接映像方式直接映像方式 直接映像方式如下图所示:直接映像方式如下图所示:直接映像方式如下图所示:直接映像方式如下图所示:图图6-29 直接映像地址变换直接映像地址变换 直接映像方式的地址变换如下图所示:直接映像方式的地址变换如下图所示:直接映像方式的地址变换如下图所示:直接映像方式的地址变换
12、如下图所示:2全相联映像及地址变换全相联映像及地址变换 全相联映像方式是主存中的任意一块可以映像到Cache中任意的块位置上。如果Cache的块数为Cb,主存的块数为Mb,则主存和Cache块之间的映像关系共有CbMb种。图图6-31 全相联映像方式全相联映像方式全相联映像方式如下图所示:全相联映像方式如下图所示:全相联映像方式如下图所示:全相联映像方式如下图所示:图图6-32 全相联映像方式的地址变换全相联映像方式的地址变换全相联映像方式地址变换如下图所示:全相联映像方式地址变换如下图所示:全相联映像方式地址变换如下图所示:全相联映像方式地址变换如下图所示:3组相联映像及地址变换组相联映像及
13、地址变换 组相联映像方式把主存按Cache的容量分区,主存中的各区和Cache在按同样大小划分成数量相等的组,组内再划分成块,主存的组到Cache的组之间采用直接映像方式,对应组内各块之间采用全相联映像方式。组相联映像方式如组相联映像方式如组相联映像方式如组相联映像方式如右图所示:右图所示:右图所示:右图所示:图图6-32 组相联映像方式组相联映像方式主存主存块块Cb-1=GbCg-1块块Gb Cg-Gb块块2Cb-1块块Gb块块Gb-1块块0块块GbCg(Me-1)+Gb-1块块GbCg(Me-1)+Gb块块GbCg(Me-1)+2Gb-1块块 Me-Gb=Gb Cg Me-Gb块块Mb-1
14、=Gb Cg Me-1块块=GbCg(Me-1)组组1组组0区区0组组Cg-1组组Cg(Me-1)组组CgMe-Cg+1组组CgMe-1区区Me-1Cache块块2Gb-1块块Cb-Gb=Cg Gb-Gb块块0块块Gb-1块块Gb块块Cb-1=Cg Gb-1组组0组组1组组Cg-1图图6-34 组相联映像方式的地址变换组相联映像方式的地址变换 组相联映像方式的地址变换如下图所示:组相联映像方式的地址变换如下图所示:组相联映像方式的地址变换如下图所示:组相联映像方式的地址变换如下图所示:6.8.3 替换算法 在采用全相连映像方式和组相连映像方式从内存向Cache传送一个新块,而Cache中的可用
15、位置已被占满时,就需要使用替换算法,将Cache中的块替换出去而调入新块。常用的替换算法有以下几种。1.1.随机(随机(RAND)算法)算法 该算法完全不管Cache块的过去、现在及将来的使用情况,而是简单地根据一个随机数,选择一块替换掉。2.2.先进先出(先进先出(FIFO)算法)算法 该算法的思想是按调入Cache的先后决定替换的顺序,即在需要替换时,将最先进入Cache的块作为被替换的块。3.3.近期使用最少(近期使用最少(LRU)算法)算法 该算法是根据块的使用状况将CPU近期最少使用的块作为被替换的块。4.最优化(OPT)算法 OPT算法是一种以将来使用最少作为替换的目标的一种算法。
16、6.8.4 Cache的加速比Cache系统的加速比Sp定义为:其中,其中,TCTC为为CacheCache的访存周期,的访存周期,TmTm为主存为主存的访问周期,的访问周期,T T为为CacheCache系统的等效访问周期,系统的等效访问周期,CacheCache的命中率为的命中率为H H。6.9 虚拟存储器原理6.9.1 虚拟存储器的工作原理虚拟存储器的工作原理 虚拟存储器主要由软件管理。根据采用的存储映像算法,可以将虚拟存储器的管理方式分成段式、页式和段页式三种。6.9.2 地址映像与变换 在虚拟存储器中,有三种地址空间,第一种是虚拟地址空间,也称为虚空间或虚拟存储器空间,它是应用程序员
17、用来编写程序的地址空间;第二种空间是主存储器的地址空间,也称主存地址空间、主存物理空间或实存地址空间;第三种是辅存地址空间。地址映像就是把虚拟地址空间映像到主存地址空间。目前主要有页式虚拟存储器、段式虚拟存储器和段页式虚拟存储器3种。1页式虚拟存储器页式虚拟存储器 页式虚拟存储器是把虚拟存储空间和主存实空间划分成固定容量的页(Page),各虚拟页可装入主存中不同的实际页面位置。页式虚拟存储器的地址映像方式如下所示:页式虚拟存储器的地址映像方式如下所示:页式虚拟存储器的地址映像方式如下所示:页式虚拟存储器的地址映像方式如下所示:图图6-36 页式虚拟存储器的地址映像方式页式虚拟存储器的地址映像方
18、式图图6-37 页式虚拟存储器页面映像的一个实例页式虚拟存储器页面映像的一个实例下图为页式虚拟存储器中页面映像关系的一个例子。下图为页式虚拟存储器中页面映像关系的一个例子。下图为页式虚拟存储器中页面映像关系的一个例子。下图为页式虚拟存储器中页面映像关系的一个例子。2段式虚拟存储器段式虚拟存储器 段式虚拟存储器以段为单位与主存进行数据交换,操作系统通过段表对段进行管理。图图6-38 段式虚拟存储器的地址映像方式段式虚拟存储器的地址映像方式 3段页式虚拟存储器段页式虚拟存储器 虚拟地址格式为:虚拟地址格式为:如果有多个用户在机器上运行,多道程序的如果有多个用户在机器上运行,多道程序的每一道需要一个
19、基号,由它指明该道程序的段每一道需要一个基号,由它指明该道程序的段表起始地址。表起始地址。6.9.3 页面替换算法及其实现页面替换算法与Cache中的行替换算法的不同点:(1)缺页至少要涉及前一次磁盘存取,读取所缺的页。(2)页面替换是由操作系统软件实现的。(3)页面替换的选择余地很大,属于一个进程的页面都可替换。虚拟存储器中的替换策略一般采用LRU算法、LFU算法和FIFO算法,或将两种算法结合起来使用。6.9.4 虚拟存储器实例1奔腾奔腾PC的虚地址模式的虚地址模式 奔腾PC的存储管理部件MMU包括分段部件SU和分页部件PU两部分,允许SU和PU单独和同时工作。其工作模式如下图所示。图图6-40 奔腾奔腾PC机的虚拟地址模式机的虚拟地址模式 n n 2保护模式的分页地址转换保护模式的分页地址转换奔腾奔腾4 4MBMB分页方式的地址转换过程如下图所示。分页方式的地址转换过程如下图所示。图图6-41 奔腾机奔腾机4MB分页方式的地址转换过程分页方式的地址转换过程