版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、1第三章第三章 内部存储器内部存储器3.1存储器概述3.2SRAM存储器3.3DRAM存储器3.4只读存储器和闪速存储器3.5并行存储器3.6Cache存储器返回23.1存储器概述存储器概述一、分类一、分类l按存储介质分类:磁表面/半导体存储器l按存取方式分类:随机/顺序存取(磁带)l按读写功能分类:ROM,RAMlRAM:双极型/MOSlROM:MROM/PROM/EPROM/EEPROMl按信息的可保存性分类:永久性和非永久性的l按存储器系统中的作用分类:主/辅/缓/控33.1存储器概述存储器概述二、存储器分级结构二、存储器分级结构1、目前存储器的特点是: 速度快的存储器价格贵,容量小;
2、价格低的存储器速度慢,容量大。 希望存储器系统的性能高、价格低。 在存储器系统设计时,应当在存储器容量,速度和价格方面的因素作折中考虑。 分层次的存储器体系结构如下图所示。43.1.2 存储器分级结构存储器分级结构2、分级结构l高速缓冲存储器简称cache,高速小容量半导体存储器。l主存储器简称主存,用来存放计算机运行期间的大量程序和数据。l外存储器简称外存,它是大容量辅助存储器。53.1.2 存储器分级结构存储器分级结构l分层存储器系统之间的连接关系63.1.3主存储器的技术指标主存储器的技术指标l字存储单元字存储单元:存放一个机器字的存储单元。l字节存储单元字节存储单元:存放一个字节的单元
3、。l存储容量存储容量:指一个存储器中可以容纳的存储单元总数。l存取时间存取时间:指一次读操作命令发出到该操作完成,将数据读出到数据总线上所经历的时间。单位为nsl存储周期存储周期:指连续启动两次读操作所需间隔的最小时间。单位为ns。l存储器带宽存储器带宽:单位时间里存储器所存取的信息量,单位为位/秒或字节/秒。73.2 SRAM存储器存储器l主存(内部存储器)是半导体存储器。根据信息存储的机理不同可以分为两类:l静态读写存储器(SRAM):存取速度快l动态读写存储器(DRAM):存储容量大。83.2 SRAM存储器存储器一、基本的静态存储元阵列一、基本的静态存储元阵列1、存储位元2、三组信号线
4、l地址线l数据线l行线l列线l控制线93.2 SRAM存储器存储器二、基本的二、基本的SRAM逻逻辑结构辑结构lSRAM芯大多采用双译码方式。l将地址分成x向、y向两部分。103.2 SRAM存储器存储器l存储体(2561288)l通常把各个字的同一个字的同一位集成在一个芯片(32K1)中,32K位排成256128的矩阵。8个片子就可以构成32KB。l地址译码器l采用双译码的方式(减少选择线的数目)。lA0A7为行地址译码线lA8A14为列地址译码线113.2 SRAM存储器存储器l读与写的互锁逻辑 CS:片选信号, OE:读出信号, WE:写命令。 门G1和G2互锁,保证读时不写,写时不读。
5、123.2 SRAM存储器存储器三、存储器的读写周期三、存储器的读写周期l读周期l读出时间Taql读周期时间Trcl写周期l写周期时间Twcl写时间twdl存取周期l读周期时间Trc=写时间twd13例例1P70:图:图3.5(a)是是SRA的写入时序图。其中的写入时序图。其中R/W是是读读/写命令控制线,当写命令控制线,当R/W线为低电平时,存储器按线为低电平时,存储器按给定地址把数据线上的数据写入存储器。请指出图给定地址把数据线上的数据写入存储器。请指出图3.5(a)写入时序中的错误,并画出正确的写入时序图。写入时序中的错误,并画出正确的写入时序图。解:点击上图143.3 DRAM存储器存
6、储器一、一、DRAM存储位元的记忆原理存储位元的记忆原理 SRAM存储器的存储位元是一个触发器,它具有两个稳定的状态。 而DRAM存储器的存储位元是由一个MOS晶体管和电容器组成的记忆电路,如图3.6所示。 153.3 DRAM存储器存储器1、MOS管做为开关使用,而所存储的信息1或0则是由电容器上的电荷量来体现当电容器充满电荷时,代表存储了1,当电容器放电没有电荷时,代表存储了0。2、图(a)表示写1到存储位元。此时输出缓冲器关闭、刷新缓冲器关闭,输入缓冲器打开(R/W为低),输入数据DIN=1送到存储元位线上,而行选线为高,打开MOS管,于是位线上的高电平给电容器充电,表示存储了1。 3、
7、图(b)表示写0到存储位元。此时输出缓冲器和刷新缓冲器关闭,输入缓冲器打开,输入数据DIN=0送到存储元位线上;行选线为高,打开MOS管,于是电容上的电荷通过MOS管和位线放电,表示存储了0。4、图(c)表示从存储位元读出1。输入缓冲器和刷新缓冲器关闭,输出缓冲器/读放打开(R/W为高)。行选线为高,打开MOS管,电容上所存储的1送到位线上,通过输出缓冲器/读出放大器发送到DOUT,即DOUT=1。5、图(d)表示(c)读出1后存储位元重写1。由于(c)中读出1是破坏性读出,必须恢复存储位元中原存的1。此时输入缓冲器关闭,刷新缓冲器打开,输出缓冲器/读放打开,DOUT=1经刷新缓冲器送到位线上
8、,再经MOS管写到电容上。注意,输入缓冲器与输出缓冲器总是互锁的。这是因为读操作和写操作是互斥的,不会同时发生。 163.3 DRAM存储器存储器二、DRAM芯片的逻辑结构l图3.7(a)示出1M4位DRAM芯片的管脚图。(1)增加了行地址锁存器和列地址锁存器。先传送行地址码,由行选通信号RAS打入到行地址锁存器;然后传送列地址码,由列选通信号CRS打入到列地址锁存器。(2)增加了刷新计数器和相应的控制电路。DRAM读出后必须刷新,而未读写的存储元也要定期刷新,而且要按行刷新,所以刷新计数器的长度等于行地址锁存器。刷新操作与读/写操作是交替进行的,所以通过2选1多路开关来提供刷新行地址或正常读
9、/写的行地址。17183.3 DRAM存储器存储器三、读三、读/写周期写周期l读周期、写周期:从行选通信号RAS下降沿开始,到下一个RAS信号的下降沿为止的时间,也就是连续两个读周期的时间间隔。l读周期和写周期时间相等。193.3 DRAM存储器存储器四、四、 刷新刷新l刷新:DRAM存储位元是基于电容器上的电荷量存储,这个电荷量随着时间和温度而减少,因此必须定期地刷新,以保持它们原来记忆的正确信息。l刷新操作有两种刷新方式:l集中式刷新:DRAM的所有行在每一个刷新周期中都被刷新。l例如刷新周期为8ms的内存来说,所有行的集中式刷新必须每隔8ms进行一次。为此将8ms时间分为两部分:前一段时
10、间进行正常的读/写操作,后一段时间做为集中刷新操作时间。l分散式刷新:每一行的刷新插入到正常的读/写周期之中。l例如p72图3.7所示的DRAM有1024行,如果刷新周期为8ms,则每一行必须每隔8ms1024=7.8us进行一次。203.3 DRAM存储器存储器五、存储器容量的扩充五、存储器容量的扩充 1、字长位数扩展 需要用多片给定芯片扩展字长位数。 地址线和控制线公用,数据线单独分开连接。 所需芯片数: d=设计要求的存储器容量/选择芯片存储器容量 例例2 2 利用利用1M1M4 4位的位的SRAMSRAM芯片,设计一个存储容量芯片,设计一个存储容量为为1M1M8 8位的位的SRAMSR
11、AM存储器。存储器。 解:所需芯片数量=(1M8)/(1M4)=2片213.3 DRAM存储器存储器2、字存储容量扩展 l需要用多片给定芯片来扩展字数。l地址总线和数据总线公用,控制总线中R/W公用。l由地址总线的高位段译码来决定片选信号。l所需芯片数: d=设计要求的存储器容量/选择芯片存储器容量 例例33利用利用1M1M8 8位的位的DRAMDRAM芯片设计芯片设计2M2M8 8位的位的DRAMDRAM存储存储器器解:所需芯片数d=(2M8)/(1M8)=2(片)223.3 DRAM存储器存储器3、存储器模块条 l存储器通常以插槽用模块条形式供应市场。常称为内存条,它们是在一个条状形的小印
12、制电路板上,用一定数量的存储器芯片,组成一个存储容量固定的存储模块。如图所示。l内存条有30脚、72脚、100脚、144脚、168脚等多种形式。l30脚内存条设计成8位数据线,存储容量从256KB32MB。l72脚内存条设计成32位数据总线l100脚以上内存条既用于32位数据总线又用于64位数据总线,存储容量从4MB512MB。 233.3 DRAM存储器存储器六、高级的六、高级的DRAM结构结构 lFPM DRAM:快速页模式动态存储器,它是根据程序的局部性原理来实现的。读周期和写周期中,为了寻找一个确定的存储单元地址,首先由低电平的行选通信号RAS确定行地址,然后由低电平的列选信号CAS确
13、定列地址。下一次寻找操作,也是由RAS选定行地址,CAS选定列地址,依此类推,如下图所示。 243.3 DRAM存储器存储器lCDRAM带高速缓冲存储器(cache)的动态存储器,它是在通常的DRAM芯片内又集成了一个小容量的SRAM,从而使DRAM芯片的性能得到显著改进。如图所示出1M4位CDRAM芯片的结构框图,其中SRAM为5124位。 253.3 DRAM存储器存储器lSDRAM同步型动态存储器。计算机系统中的CPU使用的是系统时钟,SDRAM的操作要求与系统时钟相同步,在系统时钟的控制下从CPU获得地址、数据和控制信息。换句话说,它与CPU的数据交换同步于外部的系统时钟信号,并且以C
14、PU/存储器总线的最高速度运行,而不需要插入等待状态。263.3 DRAM存储器存储器例4 CDRAM内存条组成实例。一片CDRAM的容量为1M4位,8片这样的芯片可组成1M32位4MB的存储模块,其组成如下图所示。273.3 DRAM存储器存储器三星内存颗粒的型号采用一个16位数字编码命名: 编码规则:K 4 X X X X X X X X - X X X X X主要含义:第1位-芯片功能K,代表是内存芯片。第2位-芯片类型4,代表DRAM。 第3位-芯片的更进一步的类型说明,S代表SDRAM、H代表DDR、G代表SGRAM。第4、5位-容量和刷新速率,容量相同的内存采用不同的刷新速率,也会
15、使用不同的编号。64、62、63、65、66、67、6A代表64Mbit的容量;28、27、2A代表128Mbit的容量;56、55、57、5A代表256Mbit的容量;51代表512Mbit的容量。第6、7位-数据线引脚个数,08代表8位数据;16代表16位数据;32代表32位数据;64代表64位数据。第11位-连线“-”。第14、15位-芯片的速率,如60为6ns;70为 7ns;7B为7.5ns (CL=3);7C为7.5ns (CL=2) ;80为 8ns;10 为10ns (66MHz)。28293.4 只读存储器和闪速存储器只读存储器和闪速存储器一、只读存储器 ROM叫做只读存储器
16、。顾名思义,只读的意思是在它工作时只能读出,不能写入。然而其中存储的原始数据,必须在它工作以前写入。只读存储器由于工作可靠,保密性强,在计算机系统中得到广泛的应用。主要有两类:l掩模ROM:掩模ROM实际上是一个存储内容固定的ROM,由生产厂家提供产品。 l可编程ROM:用户后写入内容,有些可以多次写入。l一次性编程的PROMl多次编程的EPROM和E2PROM。303.4 只读存储器和闪速存储器只读存储器和闪速存储器1、掩模ROM掩模ROM的阵列结构和存储元 313.4 只读存储器和闪速存储器只读存储器和闪速存储器2、掩模ROM的逻辑符号和内部逻辑框图 323.4 只读存储器和闪速存储器只读
17、存储器和闪速存储器3、可编程ROM lEPROM叫做光擦除可编程可读存储器。它的存储内容可以根据需要写入,当需要更新时将原存储内容抹去,再写入新的内容。333.4 只读存储器和闪速存储器只读存储器和闪速存储器lE2PROM存储元存储元 EEPROM,叫做电擦除可编程只读存储器。 这种存储器在出厂时,存储内容为全“1”状态。使用时,可根据要求把某些存储元写“0”。343.4 只读存储器和闪速存储器只读存储器和闪速存储器4、闪速存储器FLASH存储器也翻译成闪速存储器,它是高密度非失易失性的读/写存储器。高密度意味着它具有巨大比特数目的存储容量。非易失性意味着存放的数据在没有电源的情况下可以长期保
18、存。总之,它既有RAM的优点,又有ROM的优点,称得上是存储技术划时代的进展。 353.5 并行存储器并行存储器由于CPU和主存储器之间在速度上是不匹配的,这种情况便成为限制高速计算机设计的主要问题。为了提高CPU和主存之间的数据传输率,除了主存采用更高速的技术来缩短读出时间外,还可以采用并行技术的存储器。 363.5 并行存储器并行存储器l解决途径l多个存储器并行工作l并行访问和交叉访问l设置各种缓冲器l通用寄存器l采用分层的存储系统lCache(第6节)l虚拟存储系统(第9章)373.5 并行存储器并行存储器一、双端口存储器 1、双端口存储器的逻辑结构 双端口存储器由于同一个存储器具有两组
19、相互独立的读写控制电路而得名。由于进行并行的独立操作,因而是一种高速工作的存储器,在科研和工程中非常有用。 举例:双端口存储器IDT7133的逻辑框图 。 如下页图。383.5 并行存储器并行存储器393.5 并行存储器并行存储器2、无冲突读写控制 当两个端口的地址不相同时,在两个端口上进行读写操作,一定不会发生冲突。当任一端口被选中驱动时,就可对整个存储器进行存取,每一个端口都有自己的片选控制(CE)和输出驱动控制(OE)。读操作时,端口的OE(低电平有效)打开输出驱动器,由存储矩阵读出的数据就出现在I/O线上。3、有冲突读写控制 当两个端口同时存取存储器同一存储单元时,便发生读写冲突。为解
20、决此问题,特设置了BUSY标志。在这种情况下,片上的判断逻辑可以决定对哪个端口优先进行读写操作,而对另一个被延迟的端口置BUSY标志(BUSY变为低电平),即暂时关闭此端口。 403.5 并行存储器并行存储器4、有冲突读写控制判断方法(1)如果地址匹配且在CE之前有效,片上的控制逻辑在CEL和CER之间进行判断来选择端口(CE判断)。(2)如果CE在地址匹配之前变低,片上的控制逻辑在左、右地址间进行判断来选择端口(地址有效判断)。 无论采用哪种判断方式,延迟端口的BUSY标志都将置位而关闭此端口,而当允许存取的端口完成操作时,延迟端口BUSY标志才进行复位而打开此端口。413.5.1双端口存储
21、器双端口存储器423.5 并行存储器并行存储器二、多模块交叉存储器:一个由若干个模块组成的主存储器是线性编址的。这些地址在各模块中如何安排,有两种方式:一种是顺序方式,一种是交叉方式 433.5 并行存储器并行存储器l假设有n个存储体,每个存储体的容量为m个存储单元l顺序方式:n2logm2log每个存储体内的地址片选,存储体选择443.5 并行存储器并行存储器1、顺序方式例M0M3共四个模块,则每个模块8个字顺序方式: M0:07 M1:815 M2:1623 M3:2431l5位地址组织如下: X X X X Xl高位选模块,低位选块内地址l特点:某个模块进行存取时,其他模块不工作,优点是
22、某一模块出现故障时,其他模块可以照常工作,通过增添模块来扩充存储器容量比较方便。缺点是各模块串行工作,存储器的带宽受到了限制。453.5 并行存储器并行存储器2、交叉方式l(可以实现多模块流水式并行存取)n2logm2log每个存储体内的地址片选,存储体选择463.5 并行存储器并行存储器例M0M3共四个模块,则每个模块8个字l交叉方式:l M0:0,4,.除以4余数为0l M1:1,5,.除以4余数为1l M2:2,6,.除以4余数为2l M3:3,7,.除以4余数为3l5位地址组织如下: X X X X Xl高位选块内地址,低位选模块l特点:连续地址分布在相邻的不同模块内,同一个模块内的地
23、址都是不连续的。优点是对连续字的成块传送可实现多模块流水式并行存取,大大提高存储器的带宽。使用场合为成批数据读取。473.5 并行存储器并行存储器3、多模块交叉存储器的基本结构 右图为四模块交叉存储器结构框图。主存被分成4个相互独立、容量相同的模块M0,M1,M2,M3,每个模块都有自己的读写控制电路、地址寄存器和数据寄存器,各自以等同的方式与CPU传送信息。在理想情况下,如果程序段或数据块都是连续地在主存中存取,那么将大大提高主存的访问速度。 483.5 并行存储器并行存储器l通常在一个存储器周期内,n个存储体必须分时启动,设t为总线传送周期,T 为一个字的存储周期,存储器的交叉模块数为m,
24、应满足:l每经t时间延迟后启动下一个模块。l连续传送x个字所需的时间为:tmT.)1()1(nnxTtxTtxTt交叉顺序49例例5 设存储器容量为设存储器容量为32字,字长字,字长64位,模块数位,模块数m=4,分别用顺序方式,分别用顺序方式和交叉方式进行组织。存储周期和交叉方式进行组织。存储周期T=200ns,数据总线宽度为,数据总线宽度为64位,总位,总线传送周期线传送周期=50ns。若连续读出。若连续读出4个字,问顺序存储器和交叉存储器个字,问顺序存储器和交叉存储器的带宽各是多少的带宽各是多少?解:顺序存储器和交叉存储器连续读出m=4个字的信息总量都是:q=64b4=256b顺序存储器
25、和交叉存储器连续读出4个字所需的时间分别是:t2=mT=4200ns=800ns=810-7st1=T+(m-1)t=200ns+150ns=350ns=3510-7s顺序存储器和交叉存储器的带宽分别是:W2=q/t2=256b(810-7)s=320Mb/sW1=q/t1=256b(3510-7)s=730Mb/s503.6 Cache存储器存储器1、基本原理(1)功能:解决CPU和主存之间的速度不匹配问题l一般采用高速的SRAM构成。lCPU和主存之间的速度差别很大采用两级或多级Cache系统l早期的一级Cache在CPU内,二级在主板上l现在的CPU内带L1 Cahe和L2 Cahel全
26、由硬件调度,对用户透明513.6 Cache存储器存储器523.6 Cache存储器存储器(2)cache基本原理l地址映射;l替换策略;l写一致性;l性能评价。533.6 Cache存储器存储器cache基本原理1:lcache是介于CPU和主存M2之间的小容量存储器,但存取速度比主存快。主存容量配置几百MB的情况下,cache的典型值是几百KB。cache能高速地向CPU提供指令和数据,从而加快了程序的执行速度。从功能上看,它是主存的缓冲存储器,由高速的SRAM组成。为追求高速,包括管理在内的全部功能由硬件实现,因而对程序员是透明的。lCache的设计依据:CPU这次访问过的数据,下次有很
27、大的可能也是访问附近的数据。543.6 Cache存储器存储器cache基本原理2:lCPU与Cache之间的数据传送是以字为单位l主存与Cache之间的数据传送是以块为单位lCPU读主存时,便把地址同时送给Cache和主存,Cache控制逻辑依据地址判断此字是否在Cache中,若在此字立即传送给CPU ,否则,则用主存读周期把此字从主存读出送到CPU,与此同时,把含有这个字的整个数据块从主存读出送到cache中。553.6 Cache存储器存储器(3) Cache的命中率 从CPU来看,增加一个cache的目的,就是在性能上使主存的平均读出时间尽可能接近cache的读出时间。为了达到这个目的
28、,在所有的存储器访问中由cache满足CPU需要的部分应占很高的比例,即cache的命中率应接近于1。由于程序访问的局部性,实现这个目标是可能的。 563.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越好。573.6 Cache存
29、储器存储器l设r=tm/tc表示主存慢于cache的倍率,e表示访问效率,则有e=tc/ta=tc/h*tc+(1-h)*tm =1/(h+(1-h)*r=1/(r+(1-r)*hl由表达式看出,为提高访问效率,命中率h越接近1越好,r值以510为宜,不宜太大。l命中率h与程序的行为、cache的容量、组织方式、块的大小有关。58例例6CPU执行一段程序时,执行一段程序时,cache完成存取的次数为完成存取的次数为1900次,主存完成存取的次数为次,主存完成存取的次数为100次,已知次,已知cache存取周期存取周期为为50ns,主存存取周期为,主存存取周期为250ns,求,求cache/主存
30、系统的主存系统的效率和平均访问时间。效率和平均访问时间。 l公式cmacmcameettrhrrttethhttNNNh/)1 (1)1 (命中率命中率 Cache/主存系统的主存系统的平均访问时间平均访问时间访问效率访问效率Cache与内存的速与内存的速度比度比59例例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 603.6.2主存与主存与Cache的地址映射的地址映射l无论选择那种映射方式,都要把
31、主存和无论选择那种映射方式,都要把主存和cache划分为同样大小的划分为同样大小的“块块”。l选择哪种映射方式,要考虑:选择哪种映射方式,要考虑:l硬件是否容易实现硬件是否容易实现l地址变换的速度是否快地址变换的速度是否快l主存空间的利用率是否高主存空间的利用率是否高l主存装入一块时,发生冲突的概率主存装入一块时,发生冲突的概率l以下我们介绍三种映射方法以下我们介绍三种映射方法61一一、全相联的映射方式、全相联的映射方式l映射方法(多对多)映射方法(多对多)l主存内容可以拷贝到任意行主存内容可以拷贝到任意行l地址变换地址变换l标记实际上构成了一个目录表。标记实际上构成了一个目录表。62一一、全
32、相全相联的联的映射映射方式方式63一一、全相联的映射方式、全相联的映射方式1、将地址分为两部分(块号和字),在内存块、将地址分为两部分(块号和字),在内存块写入写入Cache时,同时写入块号标记;时,同时写入块号标记;2、CPU给出访问地址后,也将地址分为两部分给出访问地址后,也将地址分为两部分(块号和字),比较电路块号与(块号和字),比较电路块号与Cache 表中表中的标记进行比较,相同表示命中,访问相应单的标记进行比较,相同表示命中,访问相应单元;如果没有命中访问内存,元;如果没有命中访问内存,CPU 直接访问直接访问内存,并将被访问内存的相对应块写入内存,并将被访问内存的相对应块写入Ca
33、che。64一一、全相联的映射方式、全相联的映射方式3、特点:、特点:l优点:冲突概率小,优点:冲突概率小,Cache的利用高。的利用高。l缺点:比较器难实现,需要一个访问速度很快代价缺点:比较器难实现,需要一个访问速度很快代价高的相联存储器高的相联存储器4、应用场合:、应用场合:l适用于小容量的适用于小容量的Cache65二、直接映射方式二、直接映射方式1、映射方法(一对多)如:、映射方法(一对多)如:li= j mod ml主存第主存第j块内容拷贝到块内容拷贝到Cache的的i行行 例例cache容量容量8字,主存容量字,主存容量256字,则地址字,则地址0,8,16,24.248等等32
34、块都存放在块都存放在cache的地的地址址0内,如果第一次内,如果第一次0在在cache中,下次访问中,下次访问24内容,则不管内容,则不管cache其他位置的内容访问情况,其他位置的内容访问情况,都会引起都会引起0块内容的替换块内容的替换66二、二、直接映直接映射射方式方式2、基本原理基本原理l利用行号选择利用行号选择相应行;相应行;l把行标记与把行标记与CPU访问地址访问地址进行比较,相进行比较,相同表示命中,同表示命中,访问访问Cache;l如果没有命中,如果没有命中,访问内访问内 存,存,并将相应块写并将相应块写入入Cache67二、直接映射方式二、直接映射方式3、特点、特点l优点:比
35、较电路少优点:比较电路少m倍线路,所以硬件实现简单,倍线路,所以硬件实现简单,Cache地址为地址为主存地址的低几位,不需变换。主存地址的低几位,不需变换。l缺点:冲突概率高(抖动)缺点:冲突概率高(抖动)4、应用场合、应用场合l适合大容量适合大容量Cache68三、组相联映射方式三、组相联映射方式l前两者的组合前两者的组合lCache分组,组间采用直接映射方式,组内采用分组,组间采用直接映射方式,组内采用全相联的映射方式全相联的映射方式lCache分组分组U,组内容量,组内容量Vl映射方法(一对多)映射方法(一对多)lq= j mod ul主存第主存第j块内容拷贝到块内容拷贝到Cache的的
36、q组中的某行组中的某行l地址变换地址变换l设主存地址设主存地址x,看是不是在,看是不是在cache中,先中,先y= x mod u,则在则在y组中一次查找组中一次查找693、组相联映射方式、组相联映射方式l分析:比全相联容易实现,冲突低分析:比全相联容易实现,冲突低lv=1,则为直接相联映射方式,则为直接相联映射方式lu=1,则为全相联映射方式,则为全相联映射方式lv的取值一般比较小,的取值一般比较小, 一般是一般是2的幂,的幂,称之为称之为v路组相联路组相联cache.70713.6.3替换策略替换策略lLFU(最不经常使用最不经常使用 ):被访问的行计数器增加):被访问的行计数器增加1,换
37、值小的行,不能反映近期换值小的行,不能反映近期cache的访问情况,的访问情况,lLRU(近期最少使用)近期最少使用) :被访问的行计数器置:被访问的行计数器置0,其,其他的计数器增加他的计数器增加1,换值大的行,符合,换值大的行,符合cache的工作的工作原理原理l随机替换:随机替换:随机替换策略实际上是不要什么算法,从随机替换策略实际上是不要什么算法,从特定的行位置中随机地选取一行换出即可。这种策略特定的行位置中随机地选取一行换出即可。这种策略在硬件上容易实现,且速度也比前两种策略快。缺点在硬件上容易实现,且速度也比前两种策略快。缺点是随意换出的数据很可能马上又要使用,从而降低命是随意换出
38、的数据很可能马上又要使用,从而降低命中率和中率和cache工作效率。但这个不足随着工作效率。但这个不足随着cache容量容量增大而减小。随机替换策略的功效只是稍逊于前两种增大而减小。随机替换策略的功效只是稍逊于前两种策略。策略。723.6.3替换策略替换策略l例子:设例子:设cachecache有有1 1、2 2、3 3、4 4共共4 4个块,个块,a a、b b、c c、d d等为主存中的块等为主存中的块, ,访问顺序一次如访问顺序一次如下:下:a a、b b、c c、d d、b b、b b、c c、c c、d d、d d、a ,a ,下次若要再访问下次若要再访问e e块。块。问,采用问,采
39、用LFULFU和和LRULRU算法替换结果是不是相算法替换结果是不是相同?同? 73LFULFU(最不经常使用)(最不经常使用)LRULRU(近期最少使用)(近期最少使用)说明说明1 1块块2 2块块3 3块块4 4块块说明说明1 1块块2 2块块3 3块块4 4块块a aa a进入进入1 10 00 00 0a a进入进入0 01 11 11 1b bb b进入进入1 11 10 00 0b b进入进入1 10 02 22 2c cc c进入进入1 11 11 10 0c c进入进入2 21 10 03 3d dd d进入进入1 11 11 11 1d d进入进入3 32 21 10 0b
40、b命中命中1 12 21 11 1命中命中4 40 02 21 1b b命中命中1 13 31 11 1命中命中5 50 03 32 2c c命中命中1 13 32 21 1命中命中6 61 10 03 3c c命中命中1 13 33 31 1命中命中7 72 20 04 4d d命中命中1 13 33 32 2命中命中8 83 31 10 0d d命中命中1 13 33 33 3命中命中9 94 42 20 0a a命中命中2 23 33 33 3命中命中0 05 53 31 1e e替换替换a a1 10 00 00 0替换替换b b1 10 04 42 2743.6.4写操作策略写操作策
41、略l由于由于cache的内容只是主存部分内容的拷贝,的内容只是主存部分内容的拷贝,它应当与主存内容保持一致。而它应当与主存内容保持一致。而CPU对对cache的写入更改了的写入更改了cache的内容。如何与主存内容的内容。如何与主存内容保持一致,可选用如下三种写操作策略。保持一致,可选用如下三种写操作策略。写回法:换出时,对行的修改位进行判断,决定是写回法:换出时,对行的修改位进行判断,决定是写回还是舍掉。写回还是舍掉。全写法:写命中时,全写法:写命中时,Cache与内存一起写与内存一起写写一次法:与写回法一致,但是第一次写一次法:与写回法一致,但是第一次Cache命中命中时采用全写法。时采用
42、全写法。753.6.5 Pentium PC的的Cache1、主要包括四个部分:、主要包括四个部分:l取指取指/译码单元:译码单元:l顺序从顺序从L2cache中取程序指令,将它们译成一系列的微指令,中取程序指令,将它们译成一系列的微指令,并存入并存入L1指令指令cache中。中。l乱序执行逻辑:乱序执行逻辑:l依据数据相关性和资源可用性,调度微指令的执行,因而微指依据数据相关性和资源可用性,调度微指令的执行,因而微指令可按不同于所取机器指令流的顺序被调度执行。令可按不同于所取机器指令流的顺序被调度执行。l执行单元:执行单元:l它执行微指令,从它执行微指令,从L1数据数据cache中取所需数据,并在寄存器组中取所需数据,并在寄存器组中暂存运算结果。
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 中医医学经络腧穴学课件-奇穴
- 《学前社会教育》课件
- 2025届海南省部分学校高三上学期全真模拟(二)历史试卷(解析版)
- 2024-2025学年浙江省台州市十校联考高一上学期期中考试历史试题(解析版)
- 《物流仓储管理》课件
- 单位管理制度集合大全员工管理篇
- 《物流管理运输管理》课件
- 单位管理制度汇编大全员工管理
- 单位管理制度合并汇编【职工管理】
- 单位管理制度分享合集职员管理
- (完整版)EORTC生命质量测定量表QLQ-C30(V3.0)
- 七年级体育与健康 《足球》单元作业设计
- 毛细管升高法测量液体表面张力系数
- 室内覆盖方案设计与典型场景
- 放射性粒子植入自我评估报告
- 2023年山西云时代技术有限公司招聘笔试题库及答案解析
- 浙大中控DCS系统介绍(简洁版)
- GB/T 16288-2008塑料制品的标志
- GB/T 14486-2008塑料模塑件尺寸公差
- 北京市海淀区2022-2023学年高三期末考试历史试题及答案
- 顶板管理实施细则
评论
0/150
提交评论