《第三章存储系统3.ppt》由会员分享,可在线阅读,更多相关《第三章存储系统3.ppt(73页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、3.3 DRAM存储器存储器3、存储器模块条 l存储器通常以插槽用模块条形式供应市场。这种模块条常称为内存条,它们是在一个条状形的小印制电路板上,用一定数量的存储器芯片,组成一个存储容量固定的存储模块。如图所示。l内存条有30脚、72脚、100脚、144脚、168脚等多种形式。l30脚内存条设计成8位数据线,存储容量从256KB32MB。l72脚内存条设计成32位数据总线l100脚以上内存条既用于32位数据总线又用于64位数据总线,存储容量从4MB512MB。13.3 DRAM存储器存储器六、高级的DRAM结构 lFPM DRAM:快速页模式动态存储器,它是根据程序的局部性原理来实现的。读周期
2、和写周期中,为了寻找一个确定的存储单元地址,首先由低电平的行选通信号RAS确定行地址,然后由低电平的列选信号CAS确定列地址。下一次寻找操作,也是由RAS选定行地址,CAS选定列地址,依此类推,如下图所示。23.3 DRAM存储器存储器lCDRAM带高速缓冲存储器(cache)的动态存储器,它是在通常的DRAM芯片内又集成了一个小容量的SRAM,从而使DRAM芯片的性能得到显著改进。如图所示出1M4位CDRAM芯片的结构框图,其中SRAM为5124位。33.3 DRAM存储器存储器lSDRAM同步型动态存储器。计算机系统中的CPU使用的是系统时钟,SDRAM的操作要求与系统时钟相同步,在系统时
3、钟的控制下从CPU获得地址、数据和控制信息。换句话说,它与CPU的数据交换同步于外部的系统时钟信号,并且以CPU/存储器总线的最高速度运行,而不需要插入等待状态。其原理和时序关系见下一页图和动画。453.3 DRAM存储器存储器例4 CDRAM内存条组成实例。一片CDRAM的容量为1M4位,8片这样的芯片可组成1M32位4MB的存储模块,其组成如下图所示。63.3 DRAM存储器存储器七、DRAM主存读/写的正确性校验 DRAM通常用做主存储器,其读写操作的正确性与可靠性至关重要。为此除了正常的数据位宽度,还增加了附加位,用于读/写操作正确性校验。增加的附加位也要同数据位一起写入DRAM中保存
4、。其原理如图所示。73.4 只读存储器和闪速存储器只读存储器和闪速存储器一、只读存储器 ROM叫做只读存储器。顾名思义,只读的意思是在它工作时只能读出,不能写入。然而其中存储的原始数据,必须在它工作以前写入。只读存储器由于工作可靠,保密性强,在计算机系统中得到广泛的应用。主要有两类:l掩模ROM:掩模ROM实际上是一个存储内容固定的ROM,由生产厂家提供产品。l可编程ROM:用户后写入内容,有些可以多次写入。l一次性编程的PROMl多次编程的EPROM和E2PROM。81.掩膜式掩膜式ROM 特点特点:由厂家制成,用户不能由厂家制成,用户不能修改。可靠性高。修改。可靠性高。存储元:存储元:二极
5、管二极管 双极型晶体管双极型晶体管 MOS管管 工作原理:工作原理:管子的基极连选择线,该管管子的基极连选择线,该管导通,反向后输出为导通,反向后输出为“1”,反之,反之输出为输出为“0”。掩摸式只读存储器:掩摸式只读存储器:数据在芯片制造过程中就确定数据在芯片制造过程中就确定优点优点:可靠性和集成度高,价格便宜可靠性和集成度高,价格便宜缺点缺点:不能重写不能重写3.4 只读存储器和闪速存储器92.PROM特点特点:用户可自行改变产品中用户可自行改变产品中某些存储元,用户可编程一次。某些存储元,用户可编程一次。熔丝型熔丝型PROM 多发射极管多发射极管 基极连选择线基极连选择线 编程写入时,熔
6、丝烧断编程写入时,熔丝烧断输出为输出为“1”,不断为,不断为“0”。优点优点:可以根据用户需要编程可以根据用户需要编程缺点缺点:只能一次性改写只能一次性改写3.4 只读存储器和闪速存储器10 3.EPROM(多次性多次性编程程)(1)N型沟道浮型沟道浮动栅 MOS 电路路G 栅极极S 源源D 漏漏紫外紫外线全部擦洗全部擦洗SGDN+N+P基片基片GDS浮浮动栅SiO2+_ _ _ 113.EPROM-可擦除可编程只读存储器可擦除可编程只读存储器(Erasible Programmable ROM)可以用紫外光照射或电擦除原来的数据,然后再重新写入新的数据。可以用紫外光照射或电擦除原来的数据,然
7、后再重新写入新的数据。优点:优点:可以多次改写可以多次改写ROM中的内容。中的内容。基本存储元:基本存储元:制造时,硅栅上无电荷,该管无制造时,硅栅上无电荷,该管无导电沟道,导电沟道,D,S间不导电,存间不导电,存“1”。写写“0”时,时,D,S间加间加25V高压,另加高压,另加编程脉冲,选中的单元编程脉冲,选中的单元D,S被瞬间被瞬间击穿,电子注入硅栅。高压去掉后,击穿,电子注入硅栅。高压去掉后,因硅栅有绝缘层包围,电荷无法泄露因硅栅有绝缘层包围,电荷无法泄露硅栅变负,形成导电沟道,存储元导硅栅变负,形成导电沟道,存储元导通,输出为通,输出为“0”。衰减期很长,降到衰减期很长,降到80%需需
8、100年。年。用紫外光照射后,硅栅上的电荷形成用紫外光照射后,硅栅上的电荷形成光电流泄露,使电路恢复起始状态,变为光电流泄露,使电路恢复起始状态,变为“1”。123.4 只读存储器和闪速存储器只读存储器和闪速存储器133.4 只读存储器和闪速存储器只读存储器和闪速存储器EEPROM143.4 只读存储器和闪速存储器只读存储器和闪速存储器4、闪速存储器FLASH存储器也翻译成闪速存储器,它是高密度非失易失性的读/写存储器。高密度意味着它具有巨大比特数目的存储容量。非易失性意味着存放的数据在没有电源的情况下可以长期保存。总之,它既有RAM的优点,又有ROM的优点,称得上是存储技术划时代的进展。15
9、3.4 只读存储器和闪速存储器只读存储器和闪速存储器lFLASH存储元在EPROM存储元基础上发展起来的,由此可以看出创新与继承的关系。l如右图所示为闪速存储器中的存储元,由单个MOS晶体管组成,除漏极D和源极S外,还有一个控制栅和浮空栅。163.4 只读存储器和闪速存储器只读存储器和闪速存储器l“0”状态状态:当控制栅加上足够的正电压时,浮空栅将储存许多电子带负电,这意味着浮空栅上有很多负电荷,这种情况我们定义存储元处于0状态。l“1”状态状态:如果控制栅不加正电压,浮空栅则只有少许电子或不带电荷,这种情况我们定义为存储元处于1状态。l浮空栅上的电荷量决定了读取操作时,加在栅极上的控制电压能
10、否开启MOS管,并产生从漏极D到源极S的电流。173.4 只读存储器和闪速存储器只读存储器和闪速存储器l编程操作编程操作:实际上是写操作。所有存储元的原始状态均处“1”状态,这是因为擦除操作时控制栅不加正电压。编程操作的目的是为存储元的浮空栅补充电子,从而使存储元改写成“0”状态。如果某存储元仍保持“1”状态,则控制栅就不加正电压。l如图(a)表示编程操作时存储元写0、写1的情况。实际上编程时只写0,不写1,因为存储元擦除后原始状态全为1。要写0,就是要在控制栅C上加正电压。一旦存储元被编程,存储的数据可保持100年之久而无需外电源。183.4 只读存储器和闪速存储器只读存储器和闪速存储器l读
11、取操作:读取操作:控制栅加上正电压。浮空栅上的负电荷量将决定是否可以开启MOS晶体管。如果存储元原存1,可认为浮空栅不带负电,控制栅上的正电压足以开启晶体管。如果存储元原存0,可认为浮空栅带负电,控制栅上的正电压不足以克服浮动栅上的负电量,晶体管不能开启导通。l当MOS晶体管开启导通时,电源VD提供从漏极D到源极S的电流。读出电路检测到有电流,表示存储元中存1,若读出电路检测到无电流,表示存储元中存0,如图(b)所示。193.4 只读存储器和闪速存储器只读存储器和闪速存储器l擦除操作擦除操作:所有的存储元中浮空栅上的负电荷要全部洩放出去。为此晶体管源极S加上正电压,这与编程操作正好相反,见图(
12、c)所示。源极S上的正电压吸收浮空栅中的电子,从而使全部存储元变成1状态。203.4 只读存储器和闪速存储器只读存储器和闪速存储器lFLASH存储器的阵列结构lFLASH存储器的简化阵列结构如右图所示。在某一时间只有一条行选择线被激活。读操作时,假定某个存储元原存1,那么晶体管导通,与它所在位线接通,有电流通过位线,所经过的负载上产生一个电压降。这个电压降送到比较器的一个输入端,与另一端输入的参照电压做比较,比较器输出一个标志为逻辑1的电平。如果某个存储元原先存0,那么晶体管不导通,位线上没有电流,比较器输出端则产生一个标志为逻辑0的电平。213.5 并行存储器并行存储器由于CPU和主存储器之
13、间在速度上是不匹配的,这种情况便成为限制高速计算机设计的主要问题。为了提高CPU和主存之间的数据传输率,除了主存采用更高速的技术来缩短读出时间外,还可以采用并行技术的存储器。223.5 并行存储器并行存储器l解决途径l多个存储器并行工作l并行访问和交叉访问l设置各种缓冲器l通用寄存器l采用分层的存储系统lCache(第6节)l虚拟存储系统(第9章)233.5 并行存储器并行存储器一、双端口存储器 1、双端口存储器的逻辑结构 双端口存储器由于同一个存储器具有两组相互独立的读写控制电路而得名。由于进行并行的独立操作,因而是一种高速工作的存储器,在科研和工程中非常有用。举例说明,双端口存储器IDT7
14、133的逻辑框图。如下页图。243.5 并行存储器并行存储器253.5 并行存储器并行存储器2、无冲突读写控制 当两个端口的地址不相同时,在两个端口上进行读写操作,一定不会发生冲突。当任一端口被选中驱动时,就可对整个存储器进行存取,每一个端口都有自己的片选控制(CE)和输出驱动控制(OE)。读操作时,端口的OE(低电平有效)打开输出驱动器,由存储矩阵读出的数据就出现在I/O线上。3、有冲突读写控制 当两个端口同时存取存储器同一存储单元时,便发生读写冲突。为解决此问题,特设置了BUSY标志。在这种情况下,片上的判断逻辑可以决定对哪个端口优先进行读写操作,而对另一个被延迟的端口置BUSY标志(BU
15、SY变为低电平),即暂时关闭此端口。263.5 并行存储器并行存储器4、有冲突读写控制判断方法(1)如果地址匹配且在CE之前有效,片上的控制逻辑在CEL和CER之间进行判断来选择端口(CE判断)。(2)如果CE在地址匹配之前变低,片上的控制逻辑在左、右地址间进行判断来选择端口(地址有效判断)。无论采用哪种判断方式,延迟端口的BUSY标志都将置位而关闭此端口,而当允许存取的端口完成操作时,延迟端口BUSY标志才进行复位而打开此端口。273.5.1双端口存储器双端口存储器283.5 并行存储器并行存储器二、多模块交叉存储器:一个由若干个模块组成的主存储器是线性编址的。这些地址在各模块中如何安排,有
16、两种方式:一种是顺序方式,一种是交叉方式 29顺序方式:顺序方式:在顺序方式中某个模块进行存取时,其在顺序方式中某个模块进行存取时,其他模块可以照常工作。他模块可以照常工作。另外通过增添模块来扩充存储器也比较另外通过增添模块来扩充存储器也比较方便。但顺序方式的缺点是各模块一个方便。但顺序方式的缺点是各模块一个接一个串行工作,因此存储器的带宽受接一个串行工作,因此存储器的带宽受到了限制到了限制 。3.5 并行存储器30模块 字 012345678910111213141516171819202122232425262728293031 4 3 2 1 03.5 并行存储器313.5 并行存储器并
17、行存储器1、顺序方式例M0M3共四个模块,则每个模块8个字顺序方式:M0:07 M1:815 M2:1623 M3:2431l5位地址组织如下:X X X X Xl高位选模块,低位选块内地址l特点:某个模块进行存取时,其他模块不工作,优点是某一模块出现故障时,其他模块可以照常工作,通过增添模块来扩充存储器容量比较方便。缺点是各模块串行工作,存储器的带宽受到了限制。323.5 并行存储器并行存储器l假设有n个存储体,每个存储体的容量为m个存储单元l顺序方式:每个存储体内的地址片选,存储体选择33 存储容量是存储容量是3232个字,分成个字,分成4 4个模块,个模块,每个模块每个模块8 8个字,当
18、存储器寻址时,用地个字,当存储器寻址时,用地址寄存器的低址寄存器的低2 2位选择位选择4 4个模块中的一个,个模块中的一个,而用高而用高3 3位选择模块中的位选择模块中的8 8个字。个字。字 模块 4 3 2 1 03.5 并行存储器2、交叉方式(可以实现多模块流水式并行存取)34高速存储器多模块交叉存储器 字 模块 0481216202428159131721252926101418222630371115192327314 3 2 1 0353.5 并行存储器并行存储器例M0M3共四个模块,则每个模块8个字l交叉方式:l M0:0,4,.除以4余数为0l M1:1,5,.除以4余数为1l
19、M2:2,6,.除以4余数为2l M3:3,7,.除以4余数为3l5位地址组织如下:X X X X Xl高位选块内地址,低位选模块l特点:连续地址分布在相邻的不同模块内,同一个模块内的地址都是不连续的。优点是对连续字的成块传送可实现多模块流水式并行存取,大大提高存储器的带宽。使用场合为成批数据读取。363.5 并行存储器并行存储器3、多模块交叉存储器的基本结构 右图为四模块交叉存储器结构框图。主存被分成4个相互独立、容量相同的模块M0,M1,M2,M3,每个模块都有自己的读写控制电路、地址寄存器和数据寄存器,各自以等同的方式与CPU传送信息。在理想情况下,如果程序段或数据块都是连续地在主存中存
20、取,那么将大大提高主存的访问速度。37 每个模块各自以等同的方式与每个模块各自以等同的方式与CPUCPU传送信息。传送信息。CPUCPU同时访问四个模块,由存储器控制部件控制它同时访问四个模块,由存储器控制部件控制它们分时使用数据总线进行信息传递们分时使用数据总线进行信息传递。是一种并行。是一种并行存储器结构。存储器结构。模块字长等于数据总线宽度,模块存取一个模块字长等于数据总线宽度,模块存取一个字的存储周期为字的存储周期为T T,总线传送周期为总线传送周期为,存储器的存储器的交叉模块数为交叉模块数为m m,为了实现流水线方式存取,应当为了实现流水线方式存取,应当满足满足T=mT=m(m=T/
21、m=T/称为交叉存取度)交叉存储器称为交叉存取度)交叉存储器要求其模块数必须大于或等于要求其模块数必须大于或等于m m,以保证启动某模以保证启动某模块后经块后经mm时间再次启动该模块时,它的上次存取时间再次启动该模块时,它的上次存取操作已经完成。操作已经完成。38这样,连续读取这样,连续读取m m个字所需的时间为个字所需的时间为t1=T+(m-t1=T+(m-1)1)而顺序方式存储器连续读取而顺序方式存储器连续读取m m个字所需时间个字所需时间为为t2=t2=mTmT。交叉存储器的带宽确实大大提高了。交叉存储器的带宽确实大大提高了。m=4m=4的流水线方式存取示意图如上图的流水线方式存取示意图
22、如上图1234139例例5 设存储器容量为设存储器容量为32字,字长字,字长64位,模块数位,模块数m=4,分别用顺序方式,分别用顺序方式和交叉方式进行组织。存储周期和交叉方式进行组织。存储周期T=200ns,数据总线宽度为,数据总线宽度为64位,总位,总线传送周期线传送周期=50ns。若连续读出。若连续读出4个字,问顺序存储器和交叉存储器的个字,问顺序存储器和交叉存储器的带宽各是多少带宽各是多少?解:顺序存储器和交叉存储器连续读出m=4个字的信息总量都是:q=64b4=256b顺序存储器和交叉存储器连续读出4个字所需的时间分别是:t2=mT=4200ns=800ns=810-7st1=T+(
23、m-1)=200ns+350ns=350ns=3510-7s顺序存储器和交叉存储器的带宽分别是:W2=q/t2=256b(810-7)s=320Mb/sW1=q/t1=256b(3510-7)s=730Mb/s40相联存储器:相联存储器:是按内容访问存储器。是按内容访问存储器。相联存储器的基本原理是把存储单元所相联存储器的基本原理是把存储单元所存内容的某一部分作为检索项(即关键存内容的某一部分作为检索项(即关键字项),去检索存储器,并将存储器中字项),去检索存储器,并将存储器中该检索项符合的存储单元内容进行读出该检索项符合的存储单元内容进行读出或写入。或写入。主要用途:在虚拟存储器中存放段表、
24、主要用途:在虚拟存储器中存放段表、页表和快表,也可以作页表和快表,也可以作Cache的行地址的行地址相联存储器41相联存储器1.1.基本原理基本原理 按内容寻址的存储器。按内容寻址的存储器。地址地址 存储项(记录)存储项(记录)字段字段 任一存储项都可以直接用该项的内容作为地址来存取任一存储项都可以直接用该项的内容作为地址来存取的存储器,称为相联存储器。的存储器,称为相联存储器。选用来寻址的字段称选用来寻址的字段称关键字关键字。简称键(。简称键(KEYKEY)。)。存储项的格式:存储项的格式:KEY,DATA学学 号号姓姓 名名性性 别别平均成绩平均成绩200112001万万 一一男男89.8
25、200112002 李李 立立女女90物理地址物理地址n nn+1n+142高速存储器相联存储器相联存储器的组成相联存储器的组成 检索寄存器检索寄存器屏蔽寄存器屏蔽寄存器符合寄存器符合寄存器比较线路比较线路代码寄存器代码寄存器存储体存储体检索寄存器屏蔽寄存器比较线路存储器译码选择电路代码寄存器12.m符合寄存器433.6 Cache存储器存储器1、基本原理(1)功能:解决CPU和主存之间的速度不匹配问题l一般采用高速的SRAM构成。lCPU和主存之间的速度差别很大采用两级或多级Cache系统l早期的一级Cache在CPU内,二级在主板上l现在的CPU内带L1 Cahe和L2 Cahel全由硬件
26、调度,对用户透明443.6 Cache存储器存储器453.6 Cache存储器存储器(2)cache基本原理l地址映射;l替换策略;l写一致性;l性能评价。463.6 Cache存储器存储器cache基本原理小结:lcache是介于CPU和主存M2之间的小容量存储器,但存取速度比主存快。主存容量配置几百MB的情况下,cache的典型值是几百KB。cache能高速地向CPU提供指令和数据,从而加快了程序的执行速度。从功能上看,它是主存的缓冲存储器,由高速的SRAM组成。为追求高速,包括管理在内的全部功能由硬件实现,因而对程序员是透明的。lCache的设计依据:CPU这次访问过的数据,下次有很大的
27、可能也是访问附近的数据。lCPU与Cache之间的数据传送是以字为单位l主存与Cache之间的数据传送是以块为单位lCPU读主存时,便把地址同时送给Cache和主存,Cache控制逻辑依据地址判断此字是否在Cache中,若在此字立即传送给CPU,否则,则用主存读周期把此字从主存读出送到CPU,与此同时,把含有这个字的整个数据块从主存读出送到cache中。473.6 Cache存储器存储器(3)Cache的命中率 从CPU来看,增加一个cache的目的,就是在性能上使主存的平均读出时间尽可能接近cache的读出时间。为了达到这个目的,在所有的存储器访问中由cache满足CPU需要的部分应占很高的
28、比例,即cache的命中率应接近于1。由于程序访问的局部性,实现这个目标是可能的。483.6 Cache存储器存储器l在一个程序执行期间,设Nc表示cache完成存取的总次数,Nm表示主存完成存取的总次数,h定义为命中率,则有 h=Nc/(Nc+Nm)l若tc表示命中时的cache访问时间,tm表示未命中时的主存访问时间,1-h表示未命中率,则cache/主存系统的平均访问时间ta为:ta=h*tc+(1-h)tml我们追求的目标是,以较小的硬件代价使cache/主存系统的平均访问时间ta越接近tc越好。l设r=tm/tc表示主存慢于cache的倍率,e表示访问效率,则有e=tc/ta=tc/
29、(h*tc+(1-h)*tm =1/(h+(1-h)*r=1/(r+(1-r)*hl由表达式看出,为提高访问效率,命中率h越接近1越好,r值以510为宜,不宜太大。l命中率h与程序的行为、cache的容量、组织方式、块的大小有关。49例例6CPU执行一段程序时,执行一段程序时,cache完成存取的次数为完成存取的次数为1900次,主存完成存取的次数为次,主存完成存取的次数为100次,已知次,已知cache存取周期存取周期为为50ns,主存存取周期为,主存存取周期为250ns,求,求cache/主存系统的效主存系统的效率和平均访问时间。率和平均访问时间。l公式命中率命中率 Cache/主存系统的
30、主存系统的平均访问时间平均访问时间访问效率访问效率Cache与内存的速与内存的速度比度比50例例6解:解:lh=Nc/(Nc+Nm)=1900/(1900+100)=0.95lr=tm/tc=250ns/50ns=5le=1/(r+(1-r)h)=1/(5+(1-5)0.95=83.3%lta=tc/e=50ns/0.833=60ns 513.6.2主存与主存与Cache的地址映射的地址映射l无论选择那种映射方式,都要把主存和cache划分为同样大小的“块”。l选择哪种映射方式,要考虑:l硬件是否容易实现l地址变换的速度是否快l主存空间的利用率是否高l主存装入一块时,发生冲突的概率l以下我们介
31、绍三种映射方法52一一、全相联的映射方式、全相联的映射方式l映射方法(多对多)l主存内容可以拷贝到任意行l地址变换l标记实际上构成了一个目录表。53一一、全相全相联的联的映射映射方式方式54一一、全相联的映射方式、全相联的映射方式1、将地址分为两部分(块号和字),在内存块写入Cache时,同时写入块号标记;2、CPU给出访问地址后,也将地址分为两部分(块号和字),比较电路块号与Cache 表中的标记进行比较,相同表示命中,访问相应单元;如果没有命中访问内存,CPU 直接访问内存,并将被访问内存的相对应块写入Cache。55一一、全相联的映射方式、全相联的映射方式3、特点:l优点:冲突概率小,C
32、ache的利用高。l缺点:比较器难实现,需要一个访问速度很快代价高的相联存储器4、应用场合:l适用于小容量的Cache56二、直接映射方式二、直接映射方式1、映射方法(一对多)如:li=j mod ml主存第j块内容拷贝到Cache的i行l一般I和m都是2N级 例cache容量16字,主存容量256字,则地址2,18,34.242等都存放在cache的地址2内,如果第一次2在cache中,下次访问34内容,则不管cache其他位置的内容访问情况,都会引起2块内容的替换57二、二、直接映直接映射射方式方式2、基本原理l利用行号选择相应行;l把行标记与CPU访问地址进行比较,相同表示命中,访问Ca
33、che;l如果没有命中,访问内 存,并将相应块写入Cache58二、直接映射方式二、直接映射方式3、特点l优点:比较电路少m倍线路,所以硬件实现简单,Cache地址为主存地址的低几位,不需变换。l缺点:冲突概率高(抖动)4、应用场合l适合大容量Cache59三、组相联映射方式三、组相联映射方式l前两者的组合lCache分组,组间采用直接映射方式,组内采用全相联的映射方式lCache分组U,组内容量Vl映射方法(一对多)lq=j mod ul主存第j块内容拷贝到Cache的q组中的某行l地址变换l设主存地址x,看是不是在cache中,先y=x mod u,则在y组中一次查找603、组相联映射方式
34、、组相联映射方式l分析:比全相联容易实现,冲突低lv=1,则为直接相联映射方式lu=1,则为全相联映射方式lv的取值一般比较小,一般是2的幂,称之为v路组相联cache.61623.6.3替换策略替换策略lLFU(最不经常使用):被访问的行计数器增加1,换值小的行,不能反映近期cache的访问情况,lLRU(近期最少使用):被访问的行计数器置0,其他的计数器增加1,换值大的行,符合cache的工作原理l随机替换:随机替换策略实际上是不要什么算法,从特定的行位置中随机地选取一行换出即可。这种策略在硬件上容易实现,且速度也比前两种策略快。缺点是随意换出的数据很可能马上又要使用,从而降低命中率和ca
35、che工作效率。但这个不足随着cache容量增大而减小。随机替换策略的功效只是稍逊于前两种策略。633.6.3替换策略替换策略l例子:设cache有1、2、3、4共4个块,a、b、c、d等为主存中的块,访问顺序一次如下:a、b、c、d、b、b、c、c、d、d、a,下次若要再访问e块。问,采用LFU和LRU算法替换结果是不是相同?64LFU(最不经常使用)LRU(近期最少使用)说明1块2块3块4块说明1块2块3块4块aa进入1000a进入0111bb进入1100b进入1022cc进入1110c进入2103dd进入1111d进入3210b命中1211命中4021b命中1311命中5032c命中13
36、21命中6103c命中1331命中7204d命中1332命中8310d命中1333命中9420a命中2333命中0531e替换a1000替换b1042653.6.4写操作策略写操作策略l由于cache的内容只是主存部分内容的拷贝,它应当与主存内容保持一致。而CPU对cache的写入更改了cache的内容。如何与主存内容保持一致,可选用如下三种写操作策略。写回法:换出时,对行的修改位进行判断,决定是写回还是舍掉。全写法:写命中时,Cache与内存一起写写一次法:与写回法一致,但是第一次Cache命中时采用全写法。663.6.5 Pentium PC的的Cache1、主要包括四个部分:l取指/译码
37、单元:顺序从L2cache中取程序指令,将它们译成一系列的微指令,并存入L1指令cache中。l乱序执行逻辑:依据数据相关性和资源可用性,调度微指令的执行,因而微指令可按不同于所取机器指令流的顺序被调度执行。l执行单元:它执行微指令,从L1数据cache中取所需数据,并在寄存器组中暂存运算结果。l存储器子系统:这部分包括L2cache、L3cache和系统总线。当L1、L2cache未命中时,使用系统总线访问主存。系统总线还用于访问I/O资源。不同于所有先前Pentium模式和大多数处理器所采用的结构,Pentium 4的指令cache位于指令译码逻辑和执行部件之间。其设计理念是:Pentiu
38、m 4将机器指令译成由微指令组成的简单RISC类指令,而使用简单定长的微指令可允许采用超标量流水线和调度技术,从而增强机器的性能。673.6.5 Pentium PC的的Cachel基本原理见下图683.6.5 Pentium PC的的Cachel2级cache结构lL2内容是主存的子集lL1内容是L2的子集lL1分成8K的指令cache和8K的数据cachel指令cache是单端口256位,只读l数据cache是双端口(每个32位),读写,采用2路组相联结构128组*2行/组*32字节/行=8KB字节693.6.5 Pentium PC的的Cachel存储器读写总线周期l256为淬发式传送l
39、64位传送l数据一致性的保持lL1采用写一次法lL2采用写回法返回70本本 章章 小小 结结l对存储器的要求是容量大、速度快、成本低。为了解决了这三方面的矛盾,计算机采用多级存储体系结构,即cache、主存和外存。CPU能直接方问内存(cache、主存),但不能直接访问外存。存储器的技术指标有存储容量、存取时间、存储周期、存储器带宽。l广泛使用的SRAM和DRAM都是半导体随机读写存储器,前者速度比后者快,但集成度不如后者高。二者的优点是体积小,可靠性高,价格低廉,缺点是断电后不能保存信息。71本本 章章 小小 结结l只读存储器和闪速存储器正好弥补了SRAM和DRAM的缺点,即使断电也仍然保存
40、原先写入的数据。特别是闪速存储器能提供高性能、低功耗、高可靠性以及移动性,是一种全新的存储器体系结构。l双端口存储器和多模块交叉存储器属于并行存储器结构。前者采用空间并行技术,后者采用时间并行技术。这两种类型的存储器在科研和工程中大量使用。72本本 章章 小小 结结lcache是一种高速缓冲存储器,是为了解决CPU和主存之间速度不匹配而采用的一项重要的硬件技术,并且发展为多级cache体系,指令cache与数据cache分设体系。要求cache的命中率接近于1。主存与cache的地址映射有全相联、直接、组相联三种方式。其中组相联方式是前二者的折衷方案,适度地兼顾了二者的优点又尽量避免其缺点,从灵活性、命中率、硬件投资来说较为理想,因而得到了普遍采用。返回73