白中英组成原理第四版课件chp3

上传人:壹****1 文档编号:569373363 上传时间:2024-07-29 格式:PPT 页数:102 大小:3.83MB
返回 下载 相关 举报
白中英组成原理第四版课件chp3_第1页
第1页 / 共102页
白中英组成原理第四版课件chp3_第2页
第2页 / 共102页
白中英组成原理第四版课件chp3_第3页
第3页 / 共102页
白中英组成原理第四版课件chp3_第4页
第4页 / 共102页
白中英组成原理第四版课件chp3_第5页
第5页 / 共102页
点击查看更多>>
资源描述

《白中英组成原理第四版课件chp3》由会员分享,可在线阅读,更多相关《白中英组成原理第四版课件chp3(102页珍藏版)》请在金锄头文库上搜索。

1、第三章第三章 内部存储器内部存储器3.1存储器概述3.2SRAM存储器3.3DRAM存储器3.4只读存储器和闪速存储器3.5并行存储器3.6Cache存储器返回13.1存储器概述存储器概述一、分类l按存储介质分类:磁表面/半导体存储器l按存取方式分类:随机/顺序存取(磁带)l按读写功能分类:ROM,RAMlRAM:双极型/MOSlROM:MROM/PROM/EPROM/EEPROMl按信息的可保存性分类:永久性和非永久性的l按存储器系统中的作用分类:主/辅/缓/控23.1存储器概述存储器概述二、存储器分级结构1、目前存储器的特点是:速度快的存储器价格贵,容量小;价格低的存储器速度慢,容量大。

2、在计算机存储器体系结构设计时,我们希望存储器系统的性能高、价格低,那么在存储器系统设计时,应当在存储器容量,速度和价格方面的因素作折中考虑,建立了分层次的存储器体系结构如下图所示。33.1.2 存储器分级结构存储器分级结构2、分级结构l高速缓冲存储器简称cache,它是计算机系统中的一个高速小容量半导体存储器。l主存储器简称主存,是计算机系统的主要存储器,用来存放计算机运行期间的大量程序和数据。l外存储器简称外存,它是大容量辅助存储器。43.1.2 存储器分级结构存储器分级结构l分层存储器系统之间的连接关系53.1.3主存储器的技术指标主存储器的技术指标l字存储单元:存放一个机器字的存储单元,

3、相应的单元地址叫字地址。l字节存储单元:存放一个字节的单元,相应的地址称为字节地址。l存储容量:指一个存储器中可以容纳的存储单元总数。存储容量越大,能存储的信息就越多。l存取时间又称存储器访问时间:指一次读操作命令发出到该操作完成,将数据读出到数据总线上所经历的时间。通常取写操作时间等于读操作时间,故称为存储器存取时间。l存储周期:指连续启动两次读操作所需间隔的最小时间。通常,存储周期略大于存取时间,其时间单位为ns。l存储器带宽:单位时间里存储器所存取的信息量,通常以位/秒或字节/秒做度量单位。63.2 SRAM存储器存储器l主存(内部存储器)是半导体存储器。根据信息存储的机理不同可以分为两

4、类:l静态读写存储器(SRAM):存取速度快l动态读写存储器(DRAM):存储容量不如DRAM大。73.2 SRAM存储器存储器一、基本的静态存储元阵列1、存储位元2、三组信号线l地址线l数据线l行线l列线l控制线8SRAM芯片的结构和工作原理1内部存储单元SRAM的一个存储单元可以用来保存一 位数据,即可保存一个“0”或一个“1”。电路如图4-2所示。图4-2 SRAM内部存储单元电路中使用的T1、T2、T3、T4均是NMOS管。X是单元行地址选择线,Y是单元列地址选择线。作为存储单元电路,该电路至少应该有保持、写入和读出三种状态。93.2 SRAM存储器存储器二、基本的SRAM逻辑结构lS

5、RAM芯大多采用双译码方式,以便组织更大的存储容量。采用了二级译码:将地址分成x向、y向两部分如图所示。103.2 SRAM存储器存储器l存储体(2561288)l通常把各个字的同一个字的同一位集成在一个芯片(32K1)中,32K位排成256128的矩阵。8个片子就可以构成32KB。l地址译码器l采用双译码的方式(减少选择线的数目)。lA0A7为行地址译码线lA8A14为列地址译码线113.2 SRAM存储器存储器l读与写的互锁逻辑控制信号中CS是片选信号,CS有效时(低电平),门G1、G2均被打开。OE为读出使能信号,OE有效时(低电平),门G2开启,当写命令WE=1时(高电平),门G1关闭

6、,存储器进行读操作。写操作时,WE=0,门G1开启,门G2关闭。注意,门G1和G2是互锁的,一个开启时另一个必定关闭,这样保证了读时不写,写时不读。123.2 SRAM存储器存储器三、存储器的读写周期l读周期l读出时间Taql读周期时间Trcl写周期l写周期时间Twcl写时间twdl存取周期l读周期时间Trc=写时间twd13例例1P70:图:图3.5(a)是是SRA的写入时序图。其中的写入时序图。其中R/W是是读读/写命令控制线,当写命令控制线,当R/W线为低电平时,存储器按线为低电平时,存储器按给定地址把数据线上的数据写入存储器。请指出图给定地址把数据线上的数据写入存储器。请指出图3.5(

7、a)写入时序中的错误,并画出正确的写入时序图。写入时序中的错误,并画出正确的写入时序图。解:点击上图143.3 DRAM存储器存储器一、DRAM存储位元的记忆原理 SRAM存储器的存储位元是一个触发器,它具有两个稳定的状态。而DRAM存储器的存储位元是由一个MOS晶体管和电容器组成的记忆电路,如图3.6所示。 153.3 DRAM存储器存储器1、MOS管做为开关使用,而所存储的信息1或0则是由电容器上的电荷量来体现当电容器充满电荷时,代表存储了1,当电容器放电没有电荷时,代表存储了0。2、图(a)表示写1到存储位元。此时输出缓冲器关闭、刷新缓冲器关闭,输入缓冲器打开(R/W为低),输入数据DI

8、N=1送到存储元位线上,而行选线为高,打开MOS管,于是位线上的高电平给电容器充电,表示存储了1。 3、图(b)表示写0到存储位元。此时输出缓冲器和刷新缓冲器关闭,输入缓冲器打开,输入数据DIN=0送到存储元位线上;行选线为高,打开MOS管,于是电容上的电荷通过MOS管和位线放电,表示存储了0。4、图(c)表示从存储位元读出1。输入缓冲器和刷新缓冲器关闭,输出缓冲器/读放打开(R/W为高)。行选线为高,打开MOS管,电容上所存储的1送到位线上,通过输出缓冲器/读出放大器发送到DOUT,即DOUT=1。5、图(d)表示(c)读出1后存储位元重写1。由于(c)中读出1是破坏性读出,必须恢复存储位元

9、中原存的1。此时输入缓冲器关闭,刷新缓冲器打开,输出缓冲器/读放打开,DOUT=1经刷新缓冲器送到位线上,再经MOS管写到电容上。注意,输入缓冲器与输出缓冲器总是互锁的。这是因为读操作和写操作是互斥的,不会同时发生。 163.3 DRAM存储器存储器二、DRAM芯片的逻辑结构下面我们通过一个例子来看一下动态存储器的逻辑结构如图。l图3.7(a)示出1M4位DRAM芯片的管脚图,其中有两个电源脚、两个地线脚,为了对称,还有一个空脚(NC)。l图3.7(b)是该芯片的逻辑结构图。与SRAM不同的是:(1)增加了行地址锁存器和列地址锁存器。由于DRAM存储器容量很大,地址线宽度相应要增加,这势必增加

10、芯片地址线的管脚数目。为避免这种情况,采取的办法是分时传送地址码。若地址总线宽度为10位,先传送地址码A0A9,由行选通信号RAS打入到行地址锁存器;然后传送地址码A10A19,由列选通信号CRS打入到列地址锁存器。芯片内部两部分合起来,地址线宽度达20位,存储容量为1M4位。(2)增加了刷新计数器和相应的控制电路。DRAM读出后必须刷新,而未读写的存储元也要定期刷新,而且要按行刷新,所以刷新计数器的长度等于行地址锁存器。刷新操作与读/写操作是交替进行的,所以通过2选1多路开关来提供刷新行地址或正常读/写的行地址。173.3 DRAM存储器存储器183.3 DRAM存储器存储器三、读/写周期l

11、读周期、写周期的定义是从行选通信号RAS下降沿开始,到下一个RAS信号的下降沿为止的时间,也就是连续两个读周期的时间间隔。通常为控制方便,读周期和写周期时间相等。193.3 DRAM存储器存储器203.3 DRAM存储器存储器四、 刷新周期 l刷新周期:DRAM存储位元是基于电容器上的电荷量存储,这个电荷量随着时间和温度而减少,因此必须定期地刷新,以保持它们原来记忆的正确信息。l刷新操作有两种刷新方式:l集中式刷新:DRAM的所有行在每一个刷新周期中都被刷新。l例如刷新周期为8ms的内存来说,所有行的集中式刷新必须每隔8ms进行一次。为此将8ms时间分为两部分:前一段时间进行正常的读/写操作,

12、后一段时间(8ms至正常读/写周期时间)做为集中刷新操作时间。l分散式刷新:每一行的刷新插入到正常的读/写周期之中。l例如p72图3.7所示的DRAM有1024行,如果刷新周期为8ms,则每一行必须每隔8ms1024=7.8us进行一次。213.3 DRAM存储器存储器五、存储器容量的扩充 1、字长位数扩展给定的芯片字长位数较短,不满足设计要求的存储器字长,此时需要用多片给定芯片扩展字长位数。三组信号线中,地址线和控制线公用而数据线单独分开连接。 d=设计要求的存储器容量/选择芯片存储器容量 例例2 2 利用利用1M41M4位的位的SRAMSRAM芯片,设计一个存储容量芯片,设计一个存储容量为

13、为1M81M8位的位的SRAMSRAM存储器。存储器。 解:所需芯片数量=(1M8)/(1M4)=2片22233.3 DRAM存储器存储器2、字存储容量扩展 l给定的芯片存储容量较小(字数少),不满足设计要求的总存储容量,此时需要用多片给定芯片来扩展字数。三组信号组中给定芯片的地址总线和数据总线公用,控制总线中R/W公用,使能端EN不能公用,它由地址总线的高位段译码来决定片选信号。所需芯片数仍由(d=设计要求的存储器容量/选择芯片存储器容量)决定。 例例33利用利用1M81M8位的位的DRAMDRAM芯片设计芯片设计2M82M8位的位的DRAMDRAM存储存储器器解:所需芯片数d=(2M8)/

14、(1M8)=2(片)24线选法字扩展25线选法字扩展线选法字扩展芯片编号 A15A0 A19A16 地址范围 10000HFFFFH 1110B E0000HEFFFFH 20000HFFFFH 1101B D0000HDFFFFH 30000HFFFFH 1011B B0000HBFFFFH 40000HFFFFH 0111B 70000H7FFFFH 26数字逻辑法字扩展27译码法 字扩展28数字逻辑法、译码法数字逻辑法、译码法 字扩展字扩展芯片编号 地址范围低16位地址范围(A15A0) 高2位地址(A17 A16) 100000H0FFFFH 0000HFFFFH 00B 210000

15、H1FFFFH 0000HFFFFH 01B 320000H2FFFFH 0000HFFFFH 10B 430000H3FFFFH 0000HFFFFH 11B 293.3 DRAM存储器存储器3、存储器模块条 l存储器通常以插槽用模块条形式供应市场。这种模块条常称为内存条,它们是在一个条状形的小印制电路板上,用一定数量的存储器芯片,组成一个存储容量固定的存储模块。如图所示。l内存条有30脚、72脚、100脚、144脚、168脚等多种形式。l30脚内存条设计成8位数据线,存储容量从256KB32MB。l72脚内存条设计成32位数据总线l100脚以上内存条既用于32位数据总线又用于64位数据总线

16、,存储容量从4MB512MB。 303.3 DRAM存储器存储器六、高级的DRAM结构 lFPM DRAM:快速页模式动态存储器,它是根据程序的局部性原理来实现的。读周期和写周期中,为了寻找一个确定的存储单元地址,首先由低电平的行选通信号RAS确定行地址,然后由低电平的列选信号CAS确定列地址。下一次寻找操作,也是由RAS选定行地址,CAS选定列地址,依此类推,如下图所示。 313.3 DRAM存储器存储器lCDRAM带高速缓冲存储器(cache)的动态存储器,它是在通常的DRAM芯片内又集成了一个小容量的SRAM,从而使DRAM芯片的性能得到显著改进。如图所示出1M4位CDRAM芯片的结构框

17、图,其中SRAM为5124位。 323.3 DRAM存储器存储器lSDRAM同步型动态存储器。计算机系统中的CPU使用的是系统时钟,SDRAM的操作要求与系统时钟相同步,在系统时钟的控制下从CPU获得地址、数据和控制信息。换句话说,它与CPU的数据交换同步于外部的系统时钟信号,并且以CPU/存储器总线的最高速度运行,而不需要插入等待状态。其原理和时序关系见下一页图和动画。33343.3 DRAM存储器存储器例4 CDRAM内存条组成实例。一片CDRAM的容量为1M4位,8片这样的芯片可组成1M32位4MB的存储模块,其组成如下图所示。353.3 DRAM存储器存储器七、DRAM主存读/写的正确

18、性校验 DRAM通常用做主存储器,其读写操作的正确性与可靠性至关重要。为此除了正常的数据位宽度,还增加了附加位,用于读/写操作正确性校验。增加的附加位也要同数据位一起写入DRAM中保存。其原理如图所示。363.4 只读存储器和闪速存储器只读存储器和闪速存储器一、只读存储器 ROM叫做只读存储器。顾名思义,只读的意思是在它工作时只能读出,不能写入。然而其中存储的原始数据,必须在它工作以前写入。只读存储器由于工作可靠,保密性强,在计算机系统中得到广泛的应用。主要有两类:l掩模ROM:掩模ROM实际上是一个存储内容固定的ROM,由生产厂家提供产品。 l可编程ROM:用户后写入内容,有些可以多次写入。

19、l一次性编程的PROMl多次编程的EPROM和E2PROM。373.4 只读存储器和闪速存储器只读存储器和闪速存储器1、掩模ROM掩模ROM的阵列结构和存储元 383.4 只读存储器和闪速存储器只读存储器和闪速存储器2、掩模ROM的逻辑符号和内部逻辑框图 393.4 只读存储器和闪速存储器只读存储器和闪速存储器3、可编程ROM lEPROM叫做光擦除可编程可读存储器。它的存储内容可以根据需要写入,当需要更新时将原存储内容抹去,再写入新的内容。l现以浮栅雪崩注入型MOS管为存储元的EPROM为例进行说明,结构如右图所示。 403.4 只读存储器和闪速存储器只读存储器和闪速存储器l现以浮栅雪崩注入

20、型MOS管为存储元的EPROM为例进行说明,结构如图(a)所示,图(b)是电路符号。l若在漏极D端加上约几十伏的脉冲电压,使得沟道中的电场足够强,则会造成雪崩,产生很多高能量电子。此时,若在G2栅上加上正电压,形成方向与沟道垂直的电场,便可使沟道中的电子穿过氧化层而注入到G1栅,从而使G1栅积累负电荷。l由于G1栅周围都是绝缘的二氧化硅层,泄漏电流极小,所以一旦电子注入到G1栅后,就能长期保存。 413.4 只读存储器和闪速存储器只读存储器和闪速存储器l当G1栅有电子积累时,该MOS管的开启电压变得很高,即使G2栅为高电平,该管仍不能导通,相当于存储了“0”。反之,G1栅无电子积累时,MOS管

21、的开启电压较低,当G2栅为高电平时,该管可以导通,相当于存储了“1”。图(d)示出了读出时的电路,它采用二维译码方式:x地址译码器的输出xi与G2栅极相连,以决定T2管是否选中;y地址译码器的输出yi与T1管栅极相连,控制其数据是否读出。当片选信号CS为高电平即该片选中时,方能读出数据。423.4 只读存储器和闪速存储器只读存储器和闪速存储器l这种器件的上方有一个石英窗口,如图(c)所示。当用光子能量较高的紫外光照射G1浮栅时,G1中电子获得足够能量,从而穿过氧化层回到衬底中,如图(e)所示。这样可使浮栅上的电子消失,达到抹去存储信息的目的,相当于存储器又存了全“1”。433.4 只读存储器和

22、闪速存储器只读存储器和闪速存储器l这种EPROM出厂时为全“1”状态,使用者可根据需要写“0”。写“0”电路如图(f)所示,xi和yi选择线为高电位,P端加20多伏的正脉冲,脉冲宽度为0.11ms。EPROM允许多次重写。抹去时,用40W紫外灯,相距2cm,照射几分钟即可。 443.4 只读存储器和闪速存储器只读存储器和闪速存储器lE2PROM存储元 EEPROM,叫做电擦除可编程只读存储器。其存储元是一个具有两个栅极的NMOS管,如图(a)和(b)所示,G1是控制栅,它是一个浮栅,无引出线;G2是抹去栅,它有引出线。在G1栅和漏极D之间有一小面积的氧化层,其厚度极薄,可产生隧道效应。如图(c

23、)所示,当G2栅加20V正脉冲P1时,通过隧道效应,电子由衬底注入到G1浮栅,相当于存储了“1”。利用此方法可将存储器抹成全“1”状态。453.4 只读存储器和闪速存储器只读存储器和闪速存储器l这种存储器在出厂时,存储内容为全“1”状态。使用时,可根据要求把某些存储元写“0”。写“0”电路如图(d)所示。漏极D加20V正脉冲P2,G2栅接地,浮栅上电子通过隧道返回衬底,相当于写“0”。E2PROM允许改写上千次,改写(先抹后写)大约需20ms,数据可存储20年以上。lE2PROM读出时的电路如图(e)所示,这时G2栅加3V电压,若G1栅有电子积累,T2管不能导通,相当于存“1”;若G1栅无电子

24、积累,T2管导通,相当于存“0”。 463.4 只读存储器和闪速存储器只读存储器和闪速存储器4、闪速存储器FLASH存储器也翻译成闪速存储器,它是高密度非失易失性的读/写存储器。高密度意味着它具有巨大比特数目的存储容量。非易失性意味着存放的数据在没有电源的情况下可以长期保存。总之,它既有RAM的优点,又有ROM的优点,称得上是存储技术划时代的进展。 473.4 只读存储器和闪速存储器只读存储器和闪速存储器lFLASH存储元在EPROM存储元基础上发展起来的,由此可以看出创新与继承的关系。l如右图所示为闪速存储器中的存储元,由单个MOS晶体管组成,除漏极D和源极S外,还有一个控制栅和浮空栅。48

25、3.4 只读存储器和闪速存储器只读存储器和闪速存储器l“0”状态状态:当控制栅加上足够的正电压时,浮空栅将储存许多电子带负电,这意味着浮空栅上有很多负电荷,这种情况我们定义存储元处于0状态。l“1”状态状态:如果控制栅不加正电压,浮空栅则只有少许电子或不带电荷,这种情况我们定义为存储元处于1状态。l浮空栅上的电荷量决定了读取操作时,加在栅极上的控制电压能否开启MOS管,并产生从漏极D到源极S的电流。 493.4 只读存储器和闪速存储器只读存储器和闪速存储器l编程操作编程操作:实际上是写操作。所有存储元的原始状态均处“1”状态,这是因为擦除操作时控制栅不加正电压。编程操作的目的是为存储元的浮空栅

26、补充电子,从而使存储元改写成“0”状态。如果某存储元仍保持“1”状态,则控制栅就不加正电压。l如图(a)表示编程操作时存储元写0、写1的情况。实际上编程时只写0,不写1,因为存储元擦除后原始状态全为1。要写0,就是要在控制栅C上加正电压。一旦存储元被编程,存储的数据可保持100年之久而无需外电源。 503.4 只读存储器和闪速存储器只读存储器和闪速存储器l读取操作:读取操作:控制栅加上正电压。浮空栅上的负电荷量将决定是否可以开启MOS晶体管。如果存储元原存1,可认为浮空栅不带负电,控制栅上的正电压足以开启晶体管。如果存储元原存0,可认为浮空栅带负电,控制栅上的正电压不足以克服浮动栅上的负电量,

27、晶体管不能开启导通。l当MOS晶体管开启导通时,电源VD提供从漏极D到源极S的电流。读出电路检测到有电流,表示存储元中存1,若读出电路检测到无电流,表示存储元中存0,如图(b)所示。513.4 只读存储器和闪速存储器只读存储器和闪速存储器l擦除操作擦除操作:所有的存储元中浮空栅上的负电荷要全部洩放出去。为此晶体管源极S加上正电压,这与编程操作正好相反,见图(c)所示。源极S上的正电压吸收浮空栅中的电子,从而使全部存储元变成1状态。523.4 只读存储器和闪速存储器只读存储器和闪速存储器lFLASH存储器的阵列结构lFLASH存储器的简化阵列结构如右图所示。在某一时间只有一条行选择线被激活。读操

28、作时,假定某个存储元原存1,那么晶体管导通,与它所在位线接通,有电流通过位线,所经过的负载上产生一个电压降。这个电压降送到比较器的一个输入端,与另一端输入的参照电压做比较,比较器输出一个标志为逻辑1的电平。如果某个存储元原先存0,那么晶体管不导通,位线上没有电流,比较器输出端则产生一个标志为逻辑0的电平。 533.5 并行存储器并行存储器由于CPU和主存储器之间在速度上是不匹配的,这种情况便成为限制高速计算机设计的主要问题。为了提高CPU和主存之间的数据传输率,除了主存采用更高速的技术来缩短读出时间外,还可以采用并行技术的存储器。 543.5 并行存储器并行存储器l解决途径l多个存储器并行工作

29、l并行访问和交叉访问l设置各种缓冲器l通用寄存器l采用分层的存储系统lCache(第6节)l虚拟存储系统(第9章)553.5 并行存储器并行存储器一、双端口存储器 1、双端口存储器的逻辑结构 双端口存储器由于同一个存储器具有两组相互独立的读写控制电路而得名。由于进行并行的独立操作,因而是一种高速工作的存储器,在科研和工程中非常有用。 举例说明,双端口存储器IDT7133的逻辑框图 。如下页图。563.5 并行存储器并行存储器573.5 并行存储器并行存储器2、无冲突读写控制 当两个端口的地址不相同时,在两个端口上进行读写操作,一定不会发生冲突。当任一端口被选中驱动时,就可对整个存储器进行存取,

30、每一个端口都有自己的片选控制(CE)和输出驱动控制(OE)。读操作时,端口的OE(低电平有效)打开输出驱动器,由存储矩阵读出的数据就出现在I/O线上。3、有冲突读写控制 当两个端口同时存取存储器同一存储单元时,便发生读写冲突。为解决此问题,特设置了BUSY标志。在这种情况下,片上的判断逻辑可以决定对哪个端口优先进行读写操作,而对另一个被延迟的端口置BUSY标志(BUSY变为低电平),即暂时关闭此端口。 583.5 并行存储器并行存储器4、有冲突读写控制判断方法(1)如果地址匹配且在CE之前有效,片上的控制逻辑在CEL和CER之间进行判断来选择端口(CE判断)。(2)如果CE在地址匹配之前变低,

31、片上的控制逻辑在左、右地址间进行判断来选择端口(地址有效判断)。 无论采用哪种判断方式,延迟端口的BUSY标志都将置位而关闭此端口,而当允许存取的端口完成操作时,延迟端口BUSY标志才进行复位而打开此端口。593.5.1双端口存储器双端口存储器603.5 并行存储器并行存储器二、多模块交叉存储器:一个由若干个模块组成的主存储器是线性编址的。这些地址在各模块中如何安排,有两种方式:一种是顺序方式,一种是交叉方式 613.5 并行存储器并行存储器l假设有n个存储体,每个存储体的容量为m个存储单元l顺序方式:每个存储体内的地址片选,存储体选择623.5 并行存储器并行存储器1、顺序方式例M0M3共四

32、个模块,则每个模块8个字顺序方式: M0:07 M1:815 M2:1623 M3:2431l5位地址组织如下: X X X X Xl高位选模块,低位选块内地址l特点:某个模块进行存取时,其他模块不工作,优点是某一模块出现故障时,其他模块可以照常工作,通过增添模块来扩充存储器容量比较方便。缺点是各模块串行工作,存储器的带宽受到了限制。633.5 并行存储器并行存储器2、交叉方式l(可以实现多模块流水式并行存取)每个存储体内的地址片选,存储体选择643.5 并行存储器并行存储器例M0M3共四个模块,则每个模块8个字l交叉方式:l M0:0,4,.除以4余数为0l M1:1,5,.除以4余数为1l

33、 M2:2,6,.除以4余数为2l M3:3,7,.除以4余数为3l5位地址组织如下: X X X X Xl高位选块内地址,低位选模块l特点:连续地址分布在相邻的不同模块内,同一个模块内的地址都是不连续的。优点是对连续字的成块传送可实现多模块流水式并行存取,大大提高存储器的带宽。使用场合为成批数据读取。653.5 并行存储器并行存储器3、多模块交叉存储器的基本结构 右图为四模块交叉存储器结构框图。主存被分成4个相互独立、容量相同的模块M0,M1,M2,M3,每个模块都有自己的读写控制电路、地址寄存器和数据寄存器,各自以等同的方式与CPU传送信息。在理想情况下,如果程序段或数据块都是连续地在主存

34、中存取,那么将大大提高主存的访问速度。 663.5 并行存储器并行存储器l通常在一个存储器周期内,n个存储体必须分时启动,则各个存储体的启动间隔为 (n为交叉存取度)l整个存储器的存取速度有望提高n倍67例例5 设存储器容量为设存储器容量为32字,字长字,字长64位,模块数位,模块数m=4,分别用顺序方式,分别用顺序方式和交叉方式进行组织。存储周期和交叉方式进行组织。存储周期T=200ns,数据总线宽度为,数据总线宽度为64位,总位,总线传送周期线传送周期=50ns。若连续读出。若连续读出4个字,问顺序存储器和交叉存储器的个字,问顺序存储器和交叉存储器的带宽各是多少带宽各是多少?解:顺序存储器

35、和交叉存储器连续读出m=4个字的信息总量都是:q=64b4=256b顺序存储器和交叉存储器连续读出4个字所需的时间分别是:t2=mT=4200ns=800ns=810-7st1=T+(m-1)=200ns+150ns=350ns=3.510-7s顺序存储器和交叉存储器的带宽分别是:W2=q/t2=256b(810-7)s=320Mb/sW1=q/t1=256b(3510-7)s=730Mb/s68二模块交叉存储器举例二模块交叉存储器举例69二模块交叉存储器举例二模块交叉存储器举例703.5 并行存储器并行存储器l相联存储器l原理:按内容存取的存储器,可以选择记录(关键字)的一个字段作为地址l组

36、成:见下一页图l主要用途:在虚拟存储器中存放段表、页表和快表,也可以作Cache的行地址713.5 并行存储器并行存储器723.6 Cache存储器存储器1、基本原理(1)功能:解决CPU和主存之间的速度不匹配问题l一般采用高速的SRAM构成。lCPU和主存之间的速度差别很大采用两级或多级Cache系统l早期的一级Cache在CPU内,二级在主板上l现在的CPU内带L1 Cahe和L2 Cahel全由硬件调度,对用户透明733.6 Cache存储器存储器743.6 Cache存储器存储器(2)cache基本原理l地址映射;l替换策略;l写一致性;l性能评价。753.6 Cache存储器存储器c

37、ache基本原理小结:lcache是介于CPU和主存M2之间的小容量存储器,但存取速度比主存快。主存容量配置几百MB的情况下,cache的典型值是几百KB。cache能高速地向CPU提供指令和数据,从而加快了程序的执行速度。从功能上看,它是主存的缓冲存储器,由高速的SRAM组成。为追求高速,包括管理在内的全部功能由硬件实现,因而对程序员是透明的。lCache的设计依据:CPU这次访问过的数据,下次有很大的可能也是访问附近的数据。lCPU与Cache之间的数据传送是以字为单位l主存与Cache之间的数据传送是以块为单位lCPU读主存时,便把地址同时送给Cache和主存,Cache控制逻辑依据地址

38、判断此字是否在Cache中,若在此字立即传送给CPU ,否则,则用主存读周期把此字从主存读出送到CPU,与此同时,把含有这个字的整个数据块从主存读出送到cache中。763.6 Cache存储器存储器(3) Cache的命中率 从CPU来看,增加一个cache的目的,就是在性能上使主存的平均读出时间尽可能接近cache的读出时间。为了达到这个目的,在所有的存储器访问中由cache满足CPU需要的部分应占很高的比例,即cache的命中率应接近于1。由于程序访问的局部性,实现这个目标是可能的。 773.6 Cache存储器存储器l在一个程序执行期间,设Nc表示cache完成存取的总次数,Nm表示主

39、存完成存取的总次数,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/(h*tc+(1-h)*tm =1/(h+(1-h)*r=1/(r+(1-r)*hl由表达式看出,为提高访问效率,命中率h越接近1越好,r值以510为宜,不宜太大。l命中率h与程序的行为

40、、cache的容量、组织方式、块的大小有关。78例例6CPU执行一段程序时,执行一段程序时,cache完成存取的次数为完成存取的次数为1900次,主存完成存取的次数为次,主存完成存取的次数为100次,已知次,已知cache存取周期存取周期为为50ns,主存存取周期为,主存存取周期为250ns,求,求cache/主存系统的效主存系统的效率和平均访问时间。率和平均访问时间。 l公式命中率命中率 Cache/主存系统的主存系统的平均访问时间平均访问时间访问效率访问效率Cache与内存的速与内存的速度比度比79例例6解:解:lh=Nc/(Nc+Nm)=1900/(1900+100)=0.95lr=tm

41、/tc=250ns/50ns=5le=1/(r+(1-r)h)=1/(5+(1-5)0.95=83.3%lta=tc/e=50ns/0.833=60ns 803.6.2主存与主存与Cache的地址映射的地址映射l无论选择那种映射方式,都要把主存和cache划分为同样大小的“块”。l选择哪种映射方式,要考虑:l硬件是否容易实现l地址变换的速度是否快l主存空间的利用率是否高l主存装入一块时,发生冲突的概率l以下我们介绍三种映射方法81一一、全相联的映射方式、全相联的映射方式l映射方法(多对多)l主存内容可以拷贝到任意行l地址变换l标记实际上构成了一个目录表。82一一、全相全相联的联的映射映射方式方

42、式83一一、全相联的映射方式、全相联的映射方式1、将地址分为两部分(块号和字),在内存块写入Cache时,同时写入块号标记;2、CPU给出访问地址后,也将地址分为两部分(块号和字),比较电路块号与Cache 表中的标记进行比较,相同表示命中,访问相应单元;如果没有命中访问内存,CPU 直接访问内存,并将被访问内存的相对应块写入Cache。84一一、全相联的映射方式、全相联的映射方式3、特点:l优点:冲突概率小,Cache的利用高。l缺点:比较器难实现,需要一个访问速度很快代价高的相联存储器4、应用场合:l适用于小容量的Cache85二、直接映射方式二、直接映射方式1、映射方法(一对多)如:li

43、= j mod ml主存第j块内容拷贝到Cache的i行l一般I和m都是2N级 例cache容量16字,主存容量256字,则地址2,18,34.242等都存放在cache的地址2内,如果第一次2在cache中,下次访问34内容,则不管cache其他位置的内容访问情况,都会引起2块内容的替换86二、二、直接映直接映射射方式方式2、基本原理l利用行号选择相应行;l把行标记与CPU访问地址进行比较,相同表示命中,访问Cache;l如果没有命中,访问内 存,并将相应块写入Cache87二、直接映射方式二、直接映射方式3、特点l优点:比较电路少m倍线路,所以硬件实现简单,Cache地址为主存地址的低几位

44、,不需变换。l缺点:冲突概率高(抖动)4、应用场合l适合大容量Cache88三、组相联映射方式三、组相联映射方式l前两者的组合lCache分组,组间采用直接映射方式,组内采用全相联的映射方式lCache分组U,组内容量Vl映射方法(一对多)lq= j mod ul主存第j块内容拷贝到Cache的q组中的某行l地址变换l设主存地址x,看是不是在cache中,先y= x mod u,则在y组中一次查找893、组相联映射方式、组相联映射方式l分析:比全相联容易实现,冲突低lv=1,则为直接相联映射方式lu=1,则为全相联映射方式lv的取值一般比较小, 一般是2的幂,称之为v路组相联cache.909

45、13.6.3替换策略替换策略lLFU(最不经常使用 ):被访问的行计数器增加1,换值小的行,不能反映近期cache的访问情况,lLRU(近期最少使用) :被访问的行计数器置0,其他的计数器增加1,换值大的行,符合cache的工作原理l随机替换:随机替换策略实际上是不要什么算法,从特定的行位置中随机地选取一行换出即可。这种策略在硬件上容易实现,且速度也比前两种策略快。缺点是随意换出的数据很可能马上又要使用,从而降低命中率和cache工作效率。但这个不足随着cache容量增大而减小。随机替换策略的功效只是稍逊于前两种策略。923.6.3替换策略替换策略l例子:设cache有1、2、3、4共4个块,

46、a、b、c、d等为主存中的块,访问顺序一次如下:a、b、c、d、b、b、c、c、d、d、a ,下次若要再访问e块。问,采用LFU和LRU算法替换结果是不是相同? 93LFU(最不经常使用)LRU(近期最少使用)说明1块2块3块4块说明1块2块3块4块aa进入1000a进入0111bb进入1100b进入1022cc进入1110c进入2103dd进入1111d进入3210b命中1211命中4021b命中1311命中5032c命中1321命中6103c命中1331命中7204d命中1332命中8310d命中1333命中9420a命中2333命中0531e替换a1000替换b1042943.6.4写操

47、作策略写操作策略l由于cache的内容只是主存部分内容的拷贝,它应当与主存内容保持一致。而CPU对cache的写入更改了cache的内容。如何与主存内容保持一致,可选用如下三种写操作策略。写回法:换出时,对行的修改位进行判断,决定是写回还是舍掉。全写法:写命中时,Cache与内存一起写写一次法:与写回法一致,但是第一次Cache命中时采用全写法。953.6.5 Pentium PC的的Cache1、主要包括四个部分:l取指/译码单元:顺序从L2cache中取程序指令,将它们译成一系列的微指令,并存入L1指令cache中。l乱序执行逻辑:依据数据相关性和资源可用性,调度微指令的执行,因而微指令可

48、按不同于所取机器指令流的顺序被调度执行。l执行单元:它执行微指令,从L1数据cache中取所需数据,并在寄存器组中暂存运算结果。l存储器子系统:这部分包括L2cache、L3cache和系统总线。当L1、L2cache未命中时,使用系统总线访问主存。系统总线还用于访问I/O资源。不同于所有先前Pentium模式和大多数处理器所采用的结构,Pentium 4的指令cache位于指令译码逻辑和执行部件之间。其设计理念是:Pentium 4将机器指令译成由微指令组成的简单RISC类指令,而使用简单定长的微指令可允许采用超标量流水线和调度技术,从而增强机器的性能。963.6.5 Pentium PC的

49、的Cachel基本原理见下图973.6.5 Pentium PC的的Cachel2级cache结构lL2内容是主存的子集lL1内容是L2的子集lL1分成8K的指令cache和8K的数据cachel指令cache是单端口256位,只读l数据cache是双端口(每个32位),读写,采用2路组相联结构128组*2行/组*32字节/行=8KB字节983.6.5 Pentium PC的的Cachel存储器读写总线周期l256为淬发式传送l64位传送l数据一致性的保持lL1采用写一次法lL2采用写回法返回99本本 章章 小小 结结l对存储器的要求是容量大、速度快、成本低。为了解决了这三方面的矛盾,计算机采

50、用多级存储体系结构,即cache、主存和外存。CPU能直接方问内存(cache、主存),但不能直接访问外存。存储器的技术指标有存储容量、存取时间、存储周期、存储器带宽。l广泛使用的SRAM和DRAM都是半导体随机读写存储器,前者速度比后者快,但集成度不如后者高。二者的优点是体积小,可靠性高,价格低廉,缺点是断电后不能保存信息。100本本 章章 小小 结结l只读存储器和闪速存储器正好弥补了SRAM和DRAM的缺点,即使断电也仍然保存原先写入的数据。特别是闪速存储器能提供高性能、低功耗、高可靠性以及移动性,是一种全新的存储器体系结构。l双端口存储器和多模块交叉存储器属于并行存储器结构。前者采用空间并行技术,后者采用时间并行技术。这两种类型的存储器在科研和工程中大量使用。101本本 章章 小小 结结lcache是一种高速缓冲存储器,是为了解决CPU和主存之间速度不匹配而采用的一项重要的硬件技术,并且发展为多级cache体系,指令cache与数据cache分设体系。要求cache的命中率接近于1。主存与cache的地址映射有全相联、直接、组相联三种方式。其中组相联方式是前二者的折衷方案,适度地兼顾了二者的优点又尽量避免其缺点,从灵活性、命中率、硬件投资来说较为理想,因而得到了普遍采用。返回102

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 工作计划

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号