《第3章 存储器系统.ppt》由会员分享,可在线阅读,更多相关《第3章 存储器系统.ppt(88页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第3章 存储器系统与存储器3.1 存储器系统概述3.2 主存储器3.3 半导体随机读写存储器半导体随机读写存储器 3.4 非易失性半导体存储器非易失性半导体存储器 3.5 主存储器的控制与组成主存储器的控制与组成 3.6 高速缓冲存储器3.7高速缓冲存储器(高速缓冲存储器(Cache)3.1 存储器系统概述3.1.1 概述3.1.2 存储器分类3.1.3 存储器的层次结构3.1.1 概述存储器分为主存和辅存。主存用来存放当前正在运行的程序和数据,速度高而存储容量较小。辅存用来存放当前暂时不用的程序和数据,需要时再成批地调入主存,存储容量大而速度较低。存储系统:存储器硬件设备和管理存储器的软硬件
2、一起的合称。3.1.2 存储器分类1按存储介质分类按存储介质分类2按存取方式分类按存取方式分类3按存储器的读写功能分按存储器的读写功能分4按信息的可保存性分按信息的可保存性分 5按在计算机系统中作用分类 存储器分类表静态存储器存储器主存储器高速缓冲存储器随机存储器只读存储器磁盘磁带光盘不可改写ROM一次可改写ROM(PROM)可擦除可编程只读存储器EPROM)多次电可改写ROM(EEPROM)掩膜型只读存储器(MROM)快擦型存储器(Flash-memory)辅助存储器动态存储器3.1.3 存储器的层次结构问题的提出问题的提出速度越快,每位价格就越高;容量越大,每位价格就越低;容量越大,速度越
3、慢。解决容量和速度矛盾的办法 应用了访问局部性原理,把存储体系设计成为层次化的结构以满足使用要求。在这个层次化存储系统中,一般由高速缓存(Cache)、主存(内存)、外存(硬盘等)组成,而不只是依赖单一的存储部件或技术。CPU CPU Cache Cache 主存主存 外存外存3.2 主存储器 3.2.1 主存储器处于全机的中心地位主存储器处于全机的中心地位 3.2.2 主存储器的分类主存储器的分类 3.2.3 主存储器的主要技术指标主存储器的主要技术指标 3.2.1主存储器处于全机的中主存储器处于全机的中心地位心地位(1)主存储器是计算机中信息存储的核心(2)内存是CPU与外界进行数据交换的
4、窗口,CPU所执行的程序和所涉及到的数据都由内存直接提供;运算的结果一般也要送回内存。(3)内存可以与CPU有机结合、达到高速、准确运算的目的。3.2.2 主存储器的分类主存储器的分类 1 半导体存储器的特点半导体存储器的特点 速度高,体积小,功耗低,价格便宜,可靠性高,使用方便。其主要缺点是信息易失,即断电时不能保存信息 2 半导体存储器的分类半导体存储器的分类(1)随机存储器(随机存储器(Random Access Memory,简称,简称RAM)(2)只读存储器(只读存储器(Read-Only Memory,简称,简称ROM)3.2.3主存储器的技术指标主存储器的技术指标位位/秒,字秒,
5、字节节/秒秒 数据数据传输传输速率速率 技技术术指指标标 单单位位时间时间里存里存储储器所存取的信息量器所存取的信息量,存存储储器器带宽带宽主存的速度主存的速度连续连续启启动动两次操作所需两次操作所需间间隔的最小隔的最小时间时间存存储储周期周期主存的速度主存的速度启启动动到完成一次存到完成一次存储储器操作所器操作所经历经历的的时间时间存取存取时间时间字数,字字数,字节节数数存存储储空空间间的大小的大小在一个存在一个存储储器中可以容器中可以容纳纳的存的存储单储单元元总总数数存存储储容量容量单单位位表表现现含含义义指指标标3.3半导体随机读写存储器半导体随机读写存储器 3.3.1 静态静态MOS存
6、储器(存储器(SRAM)3.3.2 动态MOS存储器(DRAM)3.3.3 DRAM的研制与发展的研制与发展 3.3.1 静态静态MOS存储器存储器(RAM)工艺工艺双极型双极型MOSMOS型型TTLTTL型型ECLECL型型速度很快、速度很快、功耗大、功耗大、容量小容量小电路结构电路结构PMOSPMOSNMOSNMOSCMOSCMOS功耗小、功耗小、容量大容量大工作方式工作方式静态静态MOSMOS动态动态MOSMOS存储信存储信息原理息原理静态存储器静态存储器SRAMSRAM动态存储器动态存储器DRAMDRAM(双极型、静态(双极型、静态MOSMOS型):型):依靠双稳态电路内部交叉反馈的机
7、依靠双稳态电路内部交叉反馈的机制存储信息。制存储信息。(动态(动态MOSMOS型):型):依靠电容存储电荷的原理存储信息。依靠电容存储电荷的原理存储信息。功耗较大功耗较大,速度快速度快,作作CacheCache。功耗较小功耗较小,容量大容量大,速度较快速度较快,作主存作主存。(静态静态MOSMOS除外)除外)3.1.1 3.1.1 静态静态MOSMOS存储单元存储单元1.1.六管单元六管单元(1 1)组成)组成T1T1、T3T3:MOSMOS反相器反相器VccVcc触发器触发器T3T3T1T1T4T4T2T2T2T2、T4T4:MOSMOS反相器反相器T5T5T6T6T5T5、T6T6:控制门
8、管控制门管Z ZZ Z:字线,字线,选择存储单元选择存储单元位线,位线,完成读完成读/写操作写操作W WW WW W、W W:(2 2)定义)定义“0 0”:T1T1导通,导通,T2T2截止;截止;“1 1”:T1T1截止,截止,T2T2导通。导通。(3 3)工作)工作T5T5、T6T6Z Z:加高电平,加高电平,高、低电平,写高、低电平,写1/01/0。(4 4)保持)保持只要电源正常,保证向导通管提供电流,便能维持一管导只要电源正常,保证向导通管提供电流,便能维持一管导通,另一管截止的状态不变,通,另一管截止的状态不变,称称静态静态。VccVccT3T3T1T1T4T4T2T2T5T5T6
9、T6Z ZW WW W导通,选中该单元。导通,选中该单元。写入:写入:在在W W、W W上分别加上分别加读出:读出:根据根据W W、W W上有无上有无电流,读电流,读1/01/0。Z Z:加低电平,加低电平,T5T5、T6T6截止,该单元未选中,保持原状态。截止,该单元未选中,保持原状态。2.2.存储芯片存储芯片例例.SRAM.SRAM芯片芯片21142114(1 1K K4 4位)位)外特性:外特性:静态单元是非破坏性读出,读出后不需重写。静态单元是非破坏性读出,读出后不需重写。地址端:地址端:21142114(1K1K4 4)1 19 910101818A6 A5 A4 A3 A0 A1
10、A2 CS GNDA6 A5 A4 A3 A0 A1 A2 CS GNDVccVcc A7 A8 A9 D0 D1 D2 D3 WE A7 A8 A9 D0 D1 D2 D3 WEA9A9A0A0(入)入)数据端:数据端:D3D3D0D0(入入/出)出)控制端:控制端:片选片选CSCS=0=0 选中芯片选中芯片=1=1 未选中芯片未选中芯片写使能写使能WEWE=0=0 写写=1=1 读读电源、地电源、地(2)存储器的组成存储器的组成1基本存储单元基本存储单元2存储体存储体3地址译码器地址译码器 (1)单译码 (2)双译码 4片选与读写控制电路片选与读写控制电路5I/O电路电路6集电极开路或三态
11、输出缓冲器集电极开路或三态输出缓冲器7其它外围电路其它外围电路 存储器芯片的基本结构存储器芯片的基本结构图3.3 半导体存储器组成框图 单译码方式双译码方式3.3.2 3.3.2 动态动态MOSMOS存储单元与存储芯片存储单元与存储芯片1.1.四管单元四管单元(1 1)组成)组成T1T1、T2T2:记忆管记忆管C1C1、C2C2:柵极电容柵极电容T3T3、T4T4:控制门管控制门管Z Z:字线字线位线位线W W、W W:(2 2)定义)定义“0 0”:T1T1导通,导通,T2T2截截止止“1 1”:T1T1截止,截止,T2T2导通导通T1T1T2T2T3T3T4T4Z ZW WW WC1C1C
12、2C2(C1C1有电荷,有电荷,C2C2无电荷);无电荷);(C1C1无电荷,无电荷,C2C2有电荷)。有电荷)。(3 3)工作)工作Z Z:加高电平,加高电平,T3T3、T4T4导通,选中该单元。导通,选中该单元。2.2.单管单元单管单元(1 1)组成)组成(4 4)保持)保持T1T1T2T2T3T3T4T4Z ZW WW WC1C1C2C2写入:写入:在在W W、W W上分别加上分别加高、低电平,写高、低电平,写1/01/0。读出:读出:W W、W W先预充电至先预充电至再根据再根据W W、W W上有无电流,上有无电流,高电平,断开充电回路,高电平,断开充电回路,读读1/01/0。Z Z:
13、加低电平,加低电平,T3T3、T4T4截止,该单元未选中,保持原状态。截止,该单元未选中,保持原状态。需定期向电容补充电荷(动态刷新),需定期向电容补充电荷(动态刷新),称称动态动态。四管单元是非破坏性读出,读出过程即实现刷新。四管单元是非破坏性读出,读出过程即实现刷新。C C:记忆单元记忆单元C CW WZ ZT TT T:控制门管控制门管Z Z:字线字线W W:位线位线3.3.存储芯片存储芯片(2 2)定义)定义(4 4)保持)保持写入:写入:Z Z加高电平,加高电平,T T导通,导通,在在W W上加高上加高/低电平,写低电平,写1/01/0。读出:读出:W W先预充电,先预充电,根据根据
14、W W线电位的变化,读线电位的变化,读1/01/0。断开充电回路。断开充电回路。Z Z:加低电平,加低电平,T T截止,该单元未选中,保持原状态。截止,该单元未选中,保持原状态。单管单元是破坏性读出,读出后需重写。单管单元是破坏性读出,读出后需重写。“0 0”:C C无电荷,电平无电荷,电平V0V0(低)低)C CW WZ ZT T外特性:外特性:“1 1”:C C有电荷,电平有电荷,电平V1V1(高)高)(3 3)工作)工作Z Z加高电平,加高电平,T T导通,导通,例例.DRAM.DRAM芯片芯片21642164(6464K K1 1位)位)地址端:地址端:21642164(64K64K1
15、 1)1 18 89 91616GND CAS Do A6 A3 A4 A5 A7GND CAS Do A6 A3 A4 A5 A7A7A7A0A0(入)入)数据端:数据端:DiDi(入)入)控制端:控制端:片选片选写使能写使能WEWE=0=0 写写=1=1 读读电源、地电源、地空闲空闲/刷新刷新 Di WE RAS A0 A2 A1 Di WE RAS A0 A2 A1 VccVcc分时复用,提供分时复用,提供1616位地址。位地址。DoDo(出)出)行地址选通行地址选通RASRAS列地址选通列地址选通CASCAS:=0=0时时A7A7A0A0为行地址为行地址高高8 8位地址位地址:=0=0
16、时时A7A7A0A0为列地址为列地址低低8 8位地址位地址1 1脚未用,或在新型号中用于片内自动刷新。脚未用,或在新型号中用于片内自动刷新。(3)动态动态MOS存储器组成存储器组成动态存储器的组成方法,与静态存储器的组成方法基本相同,但其外围电路的组织要比静态存储器复杂得多,这是因为:1动态存储器需要刷新电路。2需要时序控制电路协调读/写周期的各个操作。3地址线是分时复用的,行地址和列地址由多路转换电路按一定的时序送入。(2)Intel 2174A动态动态RAM芯片芯片图7-15 Intel 2164A内部结构示意图 Intel 2174A引脚与逻辑符号(a)引脚;(b)逻辑符号 7.4 只读
17、存储器只读存储器(ROM)ROM即使掉电,所存储的内容也不会丢,所以属于非易失性存储器。根据半导体制造工艺进行分类 1掩膜式只读存储器(MROM)2可编程只读存储器(PROM)3可擦除、可再编程的只读存储器PROM 7.4.1掩膜式只读存储器(MROM)图7-17 掩膜式ROM示意图 信息是在制造过程中写入的。一般用于存放固定程序而且生产批量较大的产品。2可编程只读存储器(PROM)图7-18 PROM存储电路示意图 用户在使用前根据自己的需要一次性写入信息,写入后只能读出、不能修改的存储器。3 3、可擦除、可再编程的只读存储器、可擦除、可再编程的只读存储器PROM目前,根据擦除芯片内已有信息
18、的方法不同,可擦除、可再编程ROM可分为两种类型:紫外线擦除PROM(简称EPROM)电擦除PROM(简称EEPROM或E2PROM)(1)EPROM和E2PROM简介(a)SIMOS管结构;(b)SIMOS EPROM元件电路 图7-19 SIMOS型EPROM 3 35 5 闪速存储器闪速存储器 90年代英特尔公司发明的闪速存储器是一种高密度、非易失性的读写半导体存储器,它突破了传统的存储器体系,改善了现有存储器的特性,因而是一种全新的存储器技术。闪速存储器的存储元电路是在CMOS单晶体管EPROM存储元基础上制造的,因此它具有非易失性。不同的是,EPROM通过紫外光照射进行擦除,而闪速存
19、储器则是在EPROM沟道氧化物处理工艺中特别实施了电擦除和编程次数能力的设计。通过先进的设计和工艺,闪速存储器实现了优于传统EPROM的性能。闪速存储器具有以下一些明显的特点:闪速存储器具有以下一些明显的特点:固有的非易失性 SRAM和DRAM断电后保存的信息随即丢失,为此SRAM需要备用电池来确保数据存留,而DRAM需要磁盘作为后援存储器。由于闪速存储器具有可靠的非易失性,它是一种理想的存储器。廉价的高密度 不计SRAM电池的额外花费和占用空间,1M位闪速存储器的位成本比SRAM低一半以上,而16M位闪速存储器的位成本更低。相同存储器容量的闪速存储器和DRAM相比,位成本基本相近,但闪速存储
20、器节省了后援存储器(磁盘)的额外费用和空间。可直接执行 闪速存储器直接与CPU连接,由于省去了从磁盘到RAM的加载步骤,工作速度仅取决于闪速存储器的存取时间。例如120ns的读出时间使CPU实现了无等待时间,用户可充分享受程序和文件的高速存取。固态性能 闪速存储器是一种低功耗、高密度且没有机电移动装置的半导体技术,因而特别适合于便携式等微型计算机系统,使它成为替代磁盘的一种理想工具。3.5 主存储器的控制与组成主存储器的控制与组成 1、存储器芯片与CPU的连接2、存储器芯片的扩展3、存储器的读、写周期4、主存储器组成实例 3.5.1存储器芯片与CPU的连接存储器芯片与CPU之间的连接,实质上就
21、是其与系统总线的连接,包括:地址线的连接;数据线的连接;控制线的连接;在连接中要考虑的问题(1)CPU总线的负载能力(2)CPU的时序和存储器的存取速度之间的配合问题(3)存储器的地址分配和片选问题(4)控制信号的连接 3.5.2 存储器芯片容量的扩展(1)存储器芯片的位扩充 指用多个存储器器件对字长进行扩充。位扩展的一般方法是:(1)在给定的芯片中选择合适的芯片,并确定使用数量;(2)将选中芯片的地址线、读写线、片选线对应连接;(3)将数据线单独连接,拼接成要求的数据宽度。例1用1K4的2114芯片构成lK8的存储器系统。分析:由于每个芯片的容量为1K,故满足存储器系统的容量要求。但由于每个
22、芯片只能提供4位数据,故需用2片这样的芯片,它们分别提供4位数据至系统的数据总线,以满足存储器系统的字长要求。用2114组成1K8的存储器连线(2)存储器芯片的字扩充 字扩展是指增加存储器字的数量,(1)在给定的芯片中选择合适的芯片,并确定使用数量;(2)将选中芯片的低位地址线、读写线、数据线对应连接;(3)用高位地址线译码,将输出接至各芯片的片选端。例2用2K8的2716存储器芯片组成8K8的存储器系统。分析:由于每个芯片的字长为8位,故满足存储器系统的字长要求。但由于每个芯片只能提供2K个存储单元,所以需要用4片这样的芯片,以满足存储器系统的容量要求。用2716组成8K8的存储器连线(3)
23、同时进行位扩充与字扩充 字、位扩展是指既增加存储字的数量,又增加存储字长。如果已有芯片mn若干块,现在要扩展为 MN(设Mm,Nn)容量的存储器,则字位扩展共需要mn的芯片数量为:C=(M/m)(N/n)字位扩展的一般方法:(1)选择芯片先进行位扩展,扩展成“组”,使得“组”的字长达到要求的字长;(2)再用“组”进行字扩展,按照字扩展的方法将字数增加到目标字数。例3用1K4的2114芯片组成2K8的存储器系统。分析:由于芯片的字长为4位,因此首先需用采用位扩充的方法,用两片芯片组成1K8的存储器。再采用字扩充的方法来扩充容量,使用两组经过上述位扩充的芯片组来完成。用2114 组成2K8的存储器
24、连线 3、存储器的读、写周期 读周期:读周期与读出时间是两个不同的概念。读出时间是从给出有效地址到外部数据总线上稳定地出现所读出的数据信息所经历的时间。读周期时间则是存储片进行两次连续读操作时所必须间隔的时间,它总是大于或等于读出时间。写周期:要实现写操作,要求片选和写命令信号都为低,并且信号与信号相“与”的宽度至少应为tW。4主存储器组成实例 采用W4006AF构成的80386主存储器 3.5.2 存储控制存储控制动态MOS随机存储器必须刷新,需要增设附加电路包括刷新计数器、刷新/访存裁决、刷新逻辑、以及读/写控制逻辑。存储器的刷新操作是按行进行的。刷新时只加行地址,不加列地址。设存储器存取
25、周期为500ns,刷新间隔为2ms。在2ms内可安排4000个存取周期。至少要用128个周期进行刷新。图3-16 集中刷新方式 在2ms内可安排4000个存取周期,其中必须用128个周期进行刷新,使芯片中256行依次刷新一次。3872个周期可用于正常读/写,死区”为64s,占整个周期的3.2。存储器周期被分成两个阶段,第一阶段用于正常读/写操作或处于保持状态,后一阶段进行一次刷新,如果芯片存取时间为500ns,则存储器周期应为1s。在2ms内将进行2000次刷新操作。图3-17 分散刷新方式 异步刷新异步刷新如果在2ms内分散的把芯片各行刷新一遍,则行与行之间的刷新间隔为2ms/128=15.
26、625s。让刷新控制电路每隔15s产生一个刷新控制信号,而刷新期间封锁读/写请求,从而实现每隔15s刷新一行单元的内容。异步刷新方式把“死区”分散,缩短了可能的访问时间延迟,因而使用较广。3.6 高速存储器 7.3.1 相联存储器相联存储器 7.3.2 多模块交叉存储器7.3.3 双端口存储器7.3.4 几种新型存储器简介加速CPU和存储器之间有效传输的特殊措施 3.6.1 相联存储器相联存储器(CAM)是按存储内容访问的存储器。也具有按地址访问的能力。工作原理:是把存储单元所存的内容的某一部分作为检索项(也称关键字或关键项),去检查相联存储器,直接找到该数据并将它读出。相联存储器的结构和线路
27、十分复杂,因而价格昂贵,目前仅用于存储管理等容量不大的场合。(2)相联存储器的结构由存储体、检索寄存器、屏蔽寄存器、匹配寄存器、比较线路、数据寄存器以及控制线路组成。单体多字方式单体多字方式当并行的存储器共用一套地址寄存器和地址译码器时称为单体方式。7.3.3 多模块交叉存储器多体存储器方式多体存储器是以高位地址作为模块号,低位地址作为体内地址,每个模块体内地址是连续的;多体交叉方式 多体交叉寻址方式是以低位地址作为模块号,高位地址作为体内地址,各模块间地址编号采用交叉方式。多体存储器方式 多体交叉方式 多模块交叉存储器的能同时从不同的模块中读出数据 图7-31 四模块交叉存储器结构框图 图7
28、-32 流水线方式存取示意图 3.6.3 双端口存储器双端口存储器是指同一个存储器具有两组相互独立的读写控制线路,是一种高速工作的存储器。它提供了两个相互独立的端口,即左端口右端口。它们分别具有各自的地址线、数据线和控制线,可以对存储器中任何位置上的数据进行独立的存取操作。当两个端口的地址不相同时,在两个端口上进行读写操作,一定不会发生冲突。当任一端口被选中驱动时,就可对整个存储器进行存取,每一个端口都有自己的片选控制和输出驱动控制。当两个端口同时存取存储器同一存储单元时,便发生读写冲突。为解决此问题,特设置了BUSY标志。由片上的判断逻辑决定对哪个端口优先进行读写操作,而暂时关闭另一个被延迟
29、的端口。3.7 高速缓冲存储器3.7.1 高速缓冲存储器组织3.7.2 高速缓冲存储器调度与替换7.4.1 高速缓冲存储器组织1 问题的提出 计算机系统中的内部存储器通常采用动态RAM构成,具有价格低,容量大的特点,但由于动态RAM采用MOS管电容的充放电原理来表示与存储信息,其存取速度相对于CPU的信息处理速度来说较低。解决慢速的存储器和高速CPU两者速度的不匹配。2程序的局部性 在一个较短的时间间隔内,这种对局部范围的存储器地址的频繁访问,而对此范围以外的地址访问甚少的现象,称为程序的局部性。一般Cache采用高速的SRAM制作,其价格比主存贵,但因其容量远小于主存,因此能较好地解决速度和
30、价格的矛盾。Cache的读写过程的读写过程(1)写直达法(write-through)CPU同时写主存和Cache。(2)回写法(write-back)将CPU要写的信息暂时只写入Cache,并用标志将该块加以注明,直到该块从Cache中替换出去时才一次写回内存。下面来考虑一个具有2K字的高速缓存,分成128块,每块16个字。设主存为64K字,分成4096块,每块16个字。3.7.2 Cache的组织与管理1直接映像及地址变换直接映像及地址变换 直接映像是将主存中的一块唯一映像到Cache中的一块,而Cache中的一块要对应主存中的若干块。设主存中的块号为B、Cache块的块号为b,若Cach
31、e的块数为Cb,则映像关系可以表示为:b=B mod Cb 直接映像直接映像直接映像直接映像方式如图方式如图方式如图方式如图所示:所示:所示:所示:Cache的工作过程:直接映像方式的地址变换如下图所示:直接映像方式的地址变换如下图所示:直接映像方式的地址变换如下图所示:直接映像方式的地址变换如下图所示:2全相联映像及地址变换全相联映像及地址变换 全相联映像方式是主存中的任意一块可以映像到Cache中任意的块位置上。如果Cache的块数为Cb,主存的块数为Mb,则主存和Cache块之间的映像关系共有CbMb种。全相联映像方式如下图所示:全相联映像方式如下图所示:全相联映像方式如下图所示:全相联
32、映像方式如下图所示:全相联映像方式地址变换如下图所示:全相联映像方式地址变换如下图所示:全相联映像方式地址变换如下图所示:全相联映像方式地址变换如下图所示:3组相联映像及地址变换组相联映像及地址变换 组相联映像方式把主存按Cache的容量分区,主存中的各区和Cache在按同样大小划分成数量相等的组,组内再划分成块,主存的组到Cache的组之间采用直接映像方式,对应组内各块之间采用全相联映像方式。(3)组相联映象 组相联映象方式是全相联映象和直接映象的一种折衷方案。这种方法将存储空间分成若干组,各组之间是直接映象,而组内各块之间则是全相联映象。如图7-37所示,在组相联映象方式下,主存中存储块的
33、数据可调入Cache中一个指定组内的任意块中。它是上述两种映象方式的一般形式,如果组的大小为1时就变成了直接映象;如果组的大小为整个Cache的大小时就变成了全相联映象。图7-37组相联映像示意图3.2.1替换策略常用的两种替换策略是:先进先出(FIFO)策略和近期最少使用(LRU)策略。(1)先进先出(FIFO)策略 FIFO(First In First Out)策略总是把一组中最先调入Cache存储器的字块替换出去,它不需要随时记录各个字块的使用情况,所以实现容易,开销小。但其缺点是可能把一些需要经常使用的程序(如循环程序)块也作为最早进入Cache的块而被替换出去。(2)近期最少使用(
34、LRU)策略LRU(Least Recently Used)策略是把一组中近期最少使用的字块替换出去,这种替换策略需随时记录Cache存储器中各个字块的使用情况,以便确定哪个字块是近期最少使用的字块。LRU替换策略的平均命中率比FIFO要高,并且当分组容量加大时,能提高该替换策略的命中率。3.7.3PIII中采用的Cache技术PentiumIII也是基于Pentium Pro结构为核心,它具有32kB非锁定L1 Cache和512kB非锁定L2 Cache。L2可扩充到12MB,具有更合理的内存管理,可以有效地对大于L2缓存的数据块进行处理,使CPU、Cache和主存存取更趋合理,提高了系统
35、整体性能。在执行视频回放和访问大型数据库时,高效率的高速缓存管理使PIII避免了对L2 Cache的不必要的存取。由于消除了缓冲失败,多媒体和其它对时间敏感的操作性能更高了。对于可缓存的内容,PIII通过预先读取期望的数据到高速缓存里来提高速度,这一特色提高了高速缓存的命中率,减少了存取时间。为进一步发挥Cache的作用,改进内存性能并使之与CPU发展同步来维护系统平衡,一些制造CPU的厂家增加了控制缓存的指令。Intel公司也在PentiumIII处理器中新增加了70条3D及多媒体的SSE指令集,其中有很重要的一组指令是缓存控制指令。AMD公司在K6-2和K6-3中的3DNow多媒体指令中,
36、也有从L1数据Cache中预取最新数据的数据预取指令(Prefetch)。PentiumIII处理器有两类缓存控制指令。一类是数据据预存取(Prefetch)指令,能够增加从主存到缓存的数据流;另一类是内存流优化处理(Memory Streaming)指令,能够增加从处理器到主存的数据流。这两类指令都赋予了应用开发人员对缓存内容更大的控制能力,使他们能够控制缓存操作以满足其应用的需求,同时也提高了Cache的效率。7.6 小结对存储器的要求是容量大、速度快、成本低。为了解决了这三方面的矛盾,计算机采用多级存储体系结构,即Cache、主存和外存。CPU能直接访问内存(Cache、主存),但不能直
37、接访问外存。存储器的技术指标有存储容量、存取时间、存储周期、存储器带宽。广泛使用的SRAM和DRAM都是半导体随机读写存储器,前者速度比后者快,但集成度不如后者高。二者的优点是体积小,可靠性高,价格低廉,缺点是断电后不能保存信息。只读存储器和闪速存储器正好弥补了SRAM和DRAM的缺点,即使断电也仍然保存原先写入的数据。特别是闪速存储器能提供高性能、低功耗、高可靠性以及瞬时启动能力,因而有可能使现有的存储器体系结构发生重大变化。双端口存储器和多模块交叉存储器属于并行存储器。前者采用空间并行技术,后者采用时间并行技术。相联存储器不是按地址而是按内容访问的存储器,在Cache中用来存放行地址表,在虚拟存储器中用来存放段表、页表和快表。在这两种应用中,都需要快速查找。Cache是一种高速缓冲存储器,是为了解决CPU和主存之间速度不匹配而采用的一项重要的硬件技术,并且发展为多级Cache体系,指令Cache与数据Cache分设体系。要求Cache的命中率接近于1。主存与Cache的地址映射有全相联、直接、组相联 三种方式。其中组相联方式是前二者的折衷,适度兼顾了二者的优点又尽量避免其缺点,从灵活性、命中率、硬件投资来说较为理想,因而得到了普遍采用。