计算机组成原理第四章.ppt

上传人:本田雅阁 文档编号:2654038 上传时间:2019-04-30 格式:PPT 页数:143 大小:4.16MB
返回 下载 相关 举报
计算机组成原理第四章.ppt_第1页
第1页 / 共143页
计算机组成原理第四章.ppt_第2页
第2页 / 共143页
计算机组成原理第四章.ppt_第3页
第3页 / 共143页
亲,该文档总共143页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《计算机组成原理第四章.ppt》由会员分享,可在线阅读,更多相关《计算机组成原理第四章.ppt(143页珍藏版)》请在三一文库上搜索。

1、第四章 存 储 器,4.1 概述,4.2 主存储器,4.3 高速缓冲存储器,4.4 辅助存储器,4.1 概 述,存储器的两大功能: 1、 存储(写入Write) 2、 取出(读出Read) 三项基本要求: 1、大容量 2、高速度 3、低成本,概念 1、基本存储单元:存储一位(bit)二进制代码的存储元件称为基本存储单元(或存储元) 2、存储单元:主存中最小可编址的单位,是CPU对主存可访问操作的最小单位。 3、存储体:多个存储单元按一定规则组成一个整体。 4、存储器分辩率:指存储器能被区分、识别与操作的精细程度。,一、存储器分类,1. 按存储介质分类,(1) 半导体存储器,(2) 磁表面存储器

2、,(3) 磁芯存储器,(4) 光盘存储器,易失,TTL 、MOS,磁头、载磁体,硬磁材料、环状元件,激光、磁光材料,(1) 存取时间与物理地址无关(随机访问),顺序存取存储器 磁带,4.1,2. 按存取方式分类,(2) 存取时间与物理地址有关(串行访问),随机存储器,只读存储器,直接存取存储器 磁盘,在程序的执行过程中 可 读 可 写,在程序的执行过程中 只读,磁盘 磁带 光盘,高速缓冲存储器(Cache),Flash Memory,存 储 器,3. 按在计算机中的作用分类,4.1,高,小,快,1. 存储器三个主要特性的关系,二、存储器的层次结构,4.1,虚拟存储器,虚地址,逻辑地址,实地址,

3、物理地址,主存储器,4.1,(速度),(容量),4.2 主存储器,一、概述,1. 主存的基本组成,2. 主存和 CPU 的联系,4.2,高位字节 地址为字地址,低位字节 地址为字地址,设地址线 24 根,按 字节 寻址,按 字 寻址,若字长为 16 位,按 字 寻址,若字长为 32 位,3. 主存中存储单元地址的分配,4.2,224 = 16 M,8 M,4 M,(2) 存储速度,4. 主存的技术指标,(1) 存储容量,(3) 存储器的带宽,主存 存放二进制代码的总数量,读出时间 写入时间,存储器的 访问时间,读周期 写周期,位/秒,4.2,半导体存储器芯片,一、分类:按使用器件,半导体存储器

4、分双极型半导体存储器(TTL)和MOS半导体存储器两种 (1)TTL:存储速度高,集成度低,价格高,主要用于小容量的高速存储器 (2)MOS:主要用于大容量存储器。根据存储信息机构的原理不同,又分为静态MOS存储器(SRAM)和动态MOS存储器(DRAM),前者利用双稳态触发器来保存信息,只要不断电,信息是不会丢失的,后者利用MOS电容存储电荷来保存信息,使用时,需不断给电容充电才能使信息保持。 二、半导体存储器的主要优点是存储速度快,存储体积小,可靠性高;主要缺点是断电时,读写存储器不能保存信息。,静态MOS存储器,基本存储元6管静态MOS存储元 由两个MOS反相器交叉耦合而成的双稳态触发器

5、。,静态MOS存储器,基本存储元6管静态MOS存储元 B、存储元的工作原理 写操作。在字线上加一个正电压的字脉冲,使T2 、T3 管导通。若要写“0”,无论该位存储元电路原存何种状态,只需使写“0”的位线BS0 电压降为地电位(加负电压的位脉冲),经导通的2 管,迫使节点的电位等于地电位,就能使1 管截止而0 管导通。写入1,只需使写1的位线BS1 降为地电位,经导通的T3 管传给节点,迫使T0 管截止而T1 管导通。 写入过程是字线上的字脉冲和位线上的位脉冲相重合的操作过程。,静态MOS存储器,基本存储元6管静态MOS存储元的工作原理 读操作。 只需字线上加高电位的字脉冲,使T2 、T3 管

6、导通,把节点A、B分别连到位线。若该位存储电路原存“0”,节点是低电位,经一外加负载而接在位线0 上的外加电源,就会产生一个流入BS0 线的小电流(流向节点经T0 导通管入地)。“0”位线上BS0 就从平时的高电位下降一个很小的电压,经差动放大器检测出“”信号。 若该位原存“1”,就会在“1”位线BS1 中流入电流,在 BS1 位线上产生电压降,经差动放大器检测出读“1”信号。 读出过程中,位线变成了读出线。读取信息不影响触发器原来状态,故读出是非破坏性的读出。 若字线不加正脉冲,说明此存储元没有选中,T2 ,T3 管截止,A、B结点与位读出线隔离,存储元存储并保存原存信息。,三、随机存取存储

7、器 ( RAM ),1. 静态 RAM (SRAM),(1) 静态 RAM 基本电路,A 触发器非端,A 触发器原端,4.2,T1 T4, 静态 RAM 基本电路的 读 操作,4.2, 静态 RAM 基本电路的 写 操作,4.2,芯片容量,二、半导体存储芯片简介,1. 半导体存储芯片的基本结构,1K 4位,16K 1位,8K 8位,10,4,14,1,13,8,4.2,2. 半导体存储芯片的译码驱动方式,(1) 线选法,4.2,(2) 重合法,4.2,0,0,存储芯片片选线的作用,用 16K 1位 的存储芯片组成 64K 8位 的存储器,32片,4.2,(2) 静态 RAM 芯片举例, Int

8、el 2114 外特性,存储容量 1K4位,4.2,SRAM存储器,读与写的互锁逻辑 控制信号中CS是片选信号,CS有效时(低电平),门G1、G2均被打开。OE为读出使能信号,OE有效时(低电平),门G2开启,当写命令WE=1时(高电平),门G1关闭,存储器进行读操作。写操作时,WE=0,门G1开启,门G2关闭。注意,门G1和G2是互锁的,一个开启时另一个必定关闭,这样保证了读时不写,写时不读。, Intel 2114 RAM 矩阵 (64 64) 读,4.2,4.2, Intel 2114 RAM 矩阵 (64 64) 读,4.2, Intel 2114 RAM 矩阵 (64 64) 读,4

9、.2, Intel 2114 RAM 矩阵 (64 64) 读,4.2, Intel 2114 RAM 矩阵 (64 64) 读,4.2, Intel 2114 RAM 矩阵 (64 64) 读,4.2, Intel 2114 RAM 矩阵 (64 64) 读,4.2, Intel 2114 RAM 矩阵 (64 64) 读,4.2, Intel 2114 RAM 矩阵 (64 64) 读,4.2, Intel 2114 RAM 矩阵 (64 64) 写,4.2, Intel 2114 RAM 矩阵 (64 64) 写,4.2, Intel 2114 RAM 矩阵 (64 64) 写,4.2,

10、 Intel 2114 RAM 矩阵 (64 64) 写,4.2, Intel 2114 RAM 矩阵 (64 64) 写,4.2, Intel 2114 RAM 矩阵 (64 64) 写,4.2, Intel 2114 RAM 矩阵 (64 64) 写,4.2, Intel 2114 RAM 矩阵 (64 64) 写,4.2, Intel 2114 RAM 矩阵 (64 64) 写,(3) 静态 RAM 读 时序,4.2,(4) 静态 RAM (2114) 写 时序,4.2,五、存储器与 CPU 的连接,1. 存储器容量的扩展,用 2片 1K 4位 存储芯片组成 1K 8位 的存储器,4.2

11、,(2) 字扩展(增加存储字的数量),用 2片 1K 8位 存储芯片组成 2K 8位 的存储器,4.2,(3) 字、位扩展,用 8片 1K 4位 存储芯片组成 4K 8位 的存储器,4.2,2. 存储器与 CPU 的连接,(1) 地址线的连接,(2) 数据线的连接,(3) 读/写线的连接,(4) 片选线的连接,(5) 合理选用芯片,(6) 其他 时序、负载,4.2,例4.1 设CPU有16根地址线,8根数据线,并用MREQ作访存控制信号(低电平有效),用WR作读/写控制信号(高电平为读,低电平为写)。现有 下列存储芯片:1K x4位RAM; 4Kx8位RAM; SKx 8位RAM;2Kx8位R

12、OM; 4Kx 8位ROM; 8Kx8位ROM及74LS138译码器和各种门电路,如 图4.33所示。画出CPU与存储器的连接图,要求:,1、主存地址空间分配: 6000H-67FFH为系统程序区: 6800H-6BFFH为用户程序区。 2、合理选用上述存储芯片,说明各选几片? 3、详细画出存储芯片的片选逻辑图。,例4.1 解:,(1) 写出对应的二进制地址码,(2) 确定芯片的数量及类型,A15A14A13 A11 A10 A7 A4 A3 A0,4.2,(3) 分配地址线,A10 A0 接 2K 8位 ROM 的地址线,A9 A0 接 1K 4位 RAM 的地址线,(4) 确定片选信号,4

13、.2,例 4.1 CPU 与存储器的连接图,4.2,DRAM存储器,一、DRAM存储位元的记忆原理 SRAM存储器的存储位元是一个触发器,它具有两个稳定的状态。而DRAM存储器的存储位元是由一个MOS晶体管和电容器组成的记忆电路,,(1) 动态 RAM 基本单元电路,2. 动态 RAM ( DRAM ),读出与原存信息相反,读出时数据线有电流 为 “1”,写入与输入信息相同,写入时CS充电 为 “1” 放电 为 “0”,4.2,T,无电流,有电流,DRAM存储器,1、MOS管做为开关使用,而所存储的信息1或0则是由电容器上的电荷量来体现当电容器充满电荷时,代表存储了1,当电容器放电没有电荷时,

14、代表存储了0。,2、图(a)表示写1到存储位元。此时输出缓冲器关闭、刷新缓冲器关闭,输入缓冲器打开(R/W为低),输入数据DIN=1送到存储元位线上,而行选线为高,打开MOS管,于是位线上的高电平给电容器充电,表示存储了1。,3、图(b)表示写0到存储位元。此时输出缓冲器和刷新缓冲器关闭,输入缓冲器打开,输入数据DIN=0送到存储元位线上;行选线为高,打开MOS管,于是电容上的电荷通过MOS管和位线放电,表示存储了0。,4、图(c)表示从存储位元读出1。输入缓冲器和刷新缓冲器关闭,输出缓冲器/读放打开(R/W为高)。行选线为高,打开MOS管,电容上所存储的1送到位线上,通过输出缓冲器/读出放大

15、器发送到DOUT,即DOUT=1。,5、图(d)表示(c)读出1后存储位元重写1。由于(c)中读出1是破坏性读出,必须恢复存储位元中原存的1。此时输入缓冲器关闭,刷新缓冲器打开,输出缓冲器/读放打开,DOUT=1经刷新缓冲器送到位线上,再经MOS管写到电容上。注意,输入缓冲器与输出缓冲器总是互锁的。这是因为读操作和写操作是互斥的,不会同时发生。,(2) 动态 RAM 芯片举例, 三管动态 RAM 芯片 (Intel 1103) 读,4.2,读 写 控 制 电 路, 三管动态 RAM 芯片 (Intel 1103) 写,4.2,4.2, 三管动态 RAM 芯片 (Intel 1103) 写,4.

16、2, 三管动态 RAM 芯片 (Intel 1103) 写,4.2, 三管动态 RAM 芯片 (Intel 1103) 写,4.2, 三管动态 RAM 芯片 (Intel 1103) 写,4.2, 三管动态 RAM 芯片 (Intel 1103) 写,4.2, 三管动态 RAM 芯片 (Intel 1103) 写,读 写 控 制 电 路,4.2, 三管动态 RAM 芯片 (Intel 1103) 写,读 写 控 制 电 路,4.2, 三管动态 RAM 芯片 (Intel 1103) 写,读 写 控 制 电 路, 单管动态 RAM 4116 (16K 1位) 外特性,4.2, 4116 (16K

17、 1位) 芯片 读 原理,4.2,63,0,0,0, 4116 (16K 1位) 芯片 写 原理,4.2,63,0,(3) 动态 RAM 时序,行、列地址分开传送,写时序,数据 DOUT 有效,数据 DIN 有效,读时序,4.2,(4) 动态 RAM 刷新,刷新与行地址有关,“死时间率” 为 32/4000 100% = 0.8%,“死区” 为 0.5 s 32 = 16 s,4.2,以 32 32 矩阵为例,tC = tM + tR,无 “死区”, 分散刷新(存取周期为1s),(存取周期为 0.5 s + 0.5 s),4.2,以 128 128 矩阵为例, 分散刷新与集中刷新相结合,对于

18、128 128 的存储芯片(存取周期为 0.5s),将刷新安排在指令译码阶段,不会出现 “死区”,“死区” 为 0.5 s,若每隔 2 ms 集中刷新一次,“死区” 为 64 s,4.2,3. 动态 RAM 和静态 RAM 的比较,存储原理,集成度,芯片引脚,功耗,价格,速度,刷新,4.2,CDRAM存储器,CDRAM带高速缓冲存储器(cache)的动态存储器,它是在通常的DRAM芯片内又集成了一个小容量的SRAM,从而使DRAM芯片的性能得到显著改进。如图所示出1M4位CDRAM芯片的结构框图,其中SRAM为5124位。,四、只读存储器(ROM),1. 掩膜 ROM ( MROM ),行列选

19、择线交叉处有 MOS 管为“1”,行列选择线交叉处无 MOS 管为“0”,四、只读存储器(ROM),2. PROM (一次性编程),4.2,3. EPROM (多次性编程 ),(1) N型沟道浮动栅 MOS 电路,紫外线全部擦洗,4.2,(2) 2716 EPROM 的逻辑图和引脚,4.2,4. EEPROM (多次性编程 ),电可擦写,局部擦写,全部擦写,5. Flash Memory (快擦型存储器),比 E2PROM快,4.2,EPROM,价格便宜 集成度高,EEPROM,电可擦洗重写,具备 RAM 功能,FLASH存储器也翻译成闪速存储器,它是高密度非失易失性的读/写存储器。高密度意味

20、着它具有巨大比特数目的存储容量。非易失性意味着存放的数据在没有电源的情况下可以长期保存。总之,它既有RAM的优点,又有ROM的优点,称得上是存储技术划时代的进展。,5. Flash Memory (快擦型存储器),FLASH存储元在EPROM存储元基础上发展起来的,由此可以看出创新与继承的关系。 如右图所示为闪速存储器中的存储元,由单个MOS晶体管组成,除漏极D和源极S外,还有一个控制栅和浮空栅。,5. Flash Memory (快擦型存储器),“0”状态:当控制栅加上足够的正电压时,浮空栅将储存许多电子带负电,这意味着浮空栅上有很多负电荷,这种情况我们定义存储元处于0状态。 “1”状态:如

21、果控制栅不加正电压,浮空栅则只有少许电子或不带电荷,这种情况我们定义为存储元处于1状态。 浮空栅上的电荷量决定了读取操作时,加在栅极上的控制电压能否开启MOS管,并产生从漏极D到源极S的电流。,编程操作:实际上是写操作。所有存储元的原始状态均处“1”状态,这是因为擦除操作时控制栅不加正电压。编程操作的目的是为存储元的浮空栅补充电子,从而使存储元改写成“0”状态。如果某存储元仍保持“1”状态,则控制栅就不加正电压。 如图(a)表示编程操作时存储元写0、写1的情况。实际上编程时只写0,不写1,因为存储元擦除后原始状态全为1。要写0,就是要在控制栅C上加正电压。一旦存储元被编程,存储的数据可保持10

22、0年之久而无需外电源。,读取操作:控制栅加上正电压。浮空栅上的负电荷量将决定是否可以开启MOS晶体管。如果存储元原存1,可认为浮空栅不带负电,控制栅上的正电压足以开启晶体管。如果存储元原存0,可认为浮空栅带负电,控制栅上的正电压不足以克服浮动栅上的负电量,晶体管不能开启导通。 当MOS晶体管开启导通时,电源VD提供从漏极D到源极S的电流。读出电路检测到有电流,表示存储元中存1,若读出电路检测到无电流,表示存储元中存0,如图(b)所示。,擦除操作:所有的存储元中浮空栅上的负电荷要全部洩放出去。为此晶体管源极S加上正电压,这与编程操作正好相反,见图(c)所示。源极S上的正电压吸收浮空栅中的电子,从

23、而使全部存储元变成1状态。,4.3 并行存储器,由于CPU和主存储器之间在速度上是不匹配的,这种情况便成为限制高速计算机设计的主要问题。为了提高CPU和主存之间的数据传输率,除了主存采用更高速的技术来缩短读出时间外,还可以采用并行技术的存储器。 解决途径 多个存储器并行工作 并行访问和交叉访问 设置各种缓冲器 通用寄存器 采用分层的存储系统 Cache 虚拟存储系统,并行存储器,一、双端口存储器 1、双端口存储器的逻辑结构 双端口存储器由于同一个存储器具有两组相互独立的读写控制电路而得名。由于进行并行的独立操作,因而是一种高速工作的存储器,在科研和工程中非常有用。,并行存储器,并行存储器,2、

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

25、配且在CE之前有效,片上的控制逻辑在CEL和CER之间进行判断来选择端口(CE判断)。 (2)如果CE在地址匹配之前变低,片上的控制逻辑在左、右地址间进行判断来选择端口(地址有效判断)。 无论采用哪种判断方式,延迟端口的BUSY标志都将置位而关闭此端口,而当允许存取的端口完成操作时,延迟端口BUSY标志才进行复位而打开此端口。,双端口存储器,并行存储器,二、多模块交叉存储器:一个由若干个模块组成的主存储器是线性编址的。这些地址在各模块中如何安排,有两种方式:一种是顺序方式,一种是交叉方式,并行存储器,1、顺序方式 例M0M3共四个模块,则每个模块8个字 顺序方式: M0:07 M1:815 M

26、2:1623 M3:2431 5位地址组织如下: X X X X X 高位选模块,低位选块内地址 特点:某个模块进行存取时,其他模块不工作,优点是某一模块出现故障时,其他模块可以照常工作,通过增添模块来扩充存储器容量比较方便。缺点是各模块串行工作,存储器的带宽受到了限制。,并行存储器,2、交叉方式: 例M0M3共四个模块,则每个模块8个字 M0:0,4,.除以4余数为0 M1:1,5,.除以4余数为1 M2:2,6,.除以4余数为2 M3:3,7,.除以4余数为3 5位地址组织如下: X X X X X 高位选块内地址,低位选模块 特点:连续地址分布在相邻的不同模块内,同一个模块内的地址都是不

27、连续的。优点是对连续字的成块传送可实现多模块流水式并行存取,大大提高存储器的带宽。使用场合为成批数据读取。,并行存储器,3、多模块交叉存储器的基本结构 右图为四模块交叉存储器结构框图。主存被分成4个相互独立、容量相同的模块M0,M1,M2,M3,每个模块都有自己的读写控制电路、地址寄存器和数据寄存器,各自以等同的方式与CPU传送信息。在理想情况下,如果程序段或数据块都是连续地在主存中存取,那么将大大提高主存的访问速度。,并行存储器,通常在一个存储器周期内,n个存储体必须分时启动,则各个存储体的启动间隔为 (n为交叉存取度) 整个存储器的存取速度有望提高n倍,设存储器容量为32字,字长64位,模

28、块数m=4,分别用顺序方式和交叉方式进行组织。存储周期T=200ns,数据总线宽度为64位,总线传送周期=50ns。若连续读出4个字,问顺序存储器和交叉存储器的带宽各是多少?,解: 顺序存储器和交叉存储器连续读出m=4个字的信息总量都是: q=64b4=256b 顺序存储器和交叉存储器连续读出4个字所需的时间分别是: t2=mT=4200ns=800ns=810-7s t1=T+(m-1)t=200ns+3x50ns=350ns=3.510-7s 顺序存储器和交叉存储器的带宽分别是: W2=q/t2=256b(810-7)s=320Mb/s W1=q/t1=256b(3.510-7)s=730

29、Mb/s,二模块交叉存储器举例,并行存储器,相联存储器 原理:按内容存取的存储器,可以选择记录(关键字)的一个字段作为地址 组成:见下一页图 主要用途:在虚拟存储器中存放段表、页表和快表,也可以作Cache的行地址,并行存储器,4.4 高速缓冲存储器(cache),一、概述,1. 问题的提出,避免 CPU “空等” 现象,CPU 和主存(DRAM)的速度差异,容量小 速度高,容量大 速度低,程序访问的局部性原理,早期的一级Cache在CPU内,二级在主板上 现在的CPU内带L1 Cahe和L2 Cahe 全由硬件调度,对用户透明,Cache存储器,cache基本原理小结: cache是介于CP

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

31、给CPU ,否则,则用主存读周期把此字从主存读出送到CPU,与此同时,把含有这个字的整个数据块从主存读出送到cache中。,2. Cache 的工作原理,(1) 主存和缓存的编址,主存和缓存按块存储 块的大小相同,B 为块长,(2) 命中与未命中,M C,主存块 调入 缓存,主存块与缓存块 建立 了对应关系,用 标记记录 与某缓存块建立了对应关系的 主存块块号,主存块与缓存块 未建立 对应关系,主存块 未调入 缓存,4.3,(3) Cache 的命中率,CPU 欲访问的信息在 Cache 中的 比率,命中率 与 Cache 的 容量 与 块长 有关,一般每块可取 4 至 8 个字,块长取一个存

32、取周期内从主存调出的信息长度,CRAY_1 16体交叉 块长取 16 个存储字,IBM 370/168 4体交叉 块长取 4 个存储字,(64位4 = 256位),4.3,3. Cache 的基本结构,由 CPU 完成,4.3,4. Cache 的 读写 操作,写,Cache 和主存的一致性,读,4.3,例 CPU执行一段程序时,cache完成存取的次数为1900次,主存完成存取的次数为100次,已知cache存取周期为50ns,主存存取周期为250ns,求cache/主存系统的效率和平均访问时间。,公式,命中率 Cache/主存系统的平均访问时间 访问效率 Cache与内存的速度比,二、Ca

33、che 主存的地址映象,1. 直接映象,每个缓存块 i 可以和 若干 个 主存块 对应,每个主存块 j 只能和 一 个 缓存块 对应,i = j mod C,4.3,2. 全相联映象,主存 中的 任一块 可以映象到 缓存 中的 任一块,4.3,某一主存块 j 按模 Q 映射到 缓存 的第 i 组中的 任一块,i = j mod Q,3. 组相联映象,4.3,替换策略,LFU(最不经常使用 ):被访问的行计数器增加1,换值小的行,不能反映近期cache的访问情况, LRU(近期最少使用) :被访问的行计数器置0,其他的计数器增加1,换值大的行,符合cache的工作原理 随机替换:随机替换策略实际

34、上是不要什么算法,从特定的行位置中随机地选取一行换出即可。这种策略在硬件上容易实现,且速度也比前两种策略快。缺点是随意换出的数据很可能马上又要使用,从而降低命中率和cache工作效率。但这个不足随着cache容量增大而减小。随机替换策略的功效只是稍逊于前两种策略。,替换策略,例子:设cache有1、2、3、4共4个块,a、b、c、d等为主存中的块,访问顺序依次如下:a、b、c、d、b、b、c、c、d、d、a ,下次若要再访问e块。 问,采用LFU和LRU算法替换结果是不是相同?,写操作策略,由于cache的内容只是主存部分内容的拷贝,它应当与主存内容保持一致。而CPU对cache的写入更改了c

35、ache的内容。如何与主存内容保持一致,可选用如下三种写操作策略。 写回法:换出时,对行的修改位进行判断,决定是写回还是舍掉。 全写法:写命中时,Cache与内存一起写 写一次法:与写回法一致,但是第一次Cache命中时采用全写法。,Pentium PC的Cache,2级cache结构 L2内容是主存的子集 L1内容是L2的子集 L1分成8K的指令cache和8K的数据cache 指令cache是单端口256位,只读 数据cache是双端口(每个32位),读写,采用2路组相联结构128组*2行/组*32字节/行=8KB字节,Pentium PC的Cache,存储器读写总线周期 256为淬发式传

36、送 64位传送 数据一致性的保持 L1采用写一次法 L2采用写回法,返回,虚拟存储器,虚拟存储器(Virtual Memory):有层次结构存储器的计算机系统中,自动实现部分装入和部分替换功能,能从逻辑上为用户提供一个比物理贮存容量大得多,可寻址的“主存储器”。虚拟存储区的容量与物理主存大小无关,而受限于计算机的地址结构和可用磁盘容量。,虚拟存储器,虚拟存储器是由硬件和操作系统自动实现存储信息调度和管理的。它的工作过程包括6个步骤:中央处理器访问主存的逻辑地址分解成组号a和组内地址b,并对组号a进行地址变换,即将逻辑组号a作为索引,查地址变换表,以确定该组信息是否存放在主存内。如该组号已在主存

37、内,则转而执行;如果该组号不在主存内,则检查主存中是否有空闲区,如果没有,便将某个暂时不用的组调出送往辅存,以便将这组信息调入主存。从辅存读出所要的组,并送到主存空闲区,然后将那个空闲的物理组号a和逻辑组号a登录在地址变换表中。从地址变换表读出与逻辑组号a对应的物理组号a。从物理组号a和组内字节地址b得到物理地址。根据物理地址从主存中存取必要的信息,虚拟存储器,虚拟存储器与Cache比较: 不同点:主存/Cache的访问“时间比”较小,典型的为10:1,每次传送的页较小; 辅存/主存的访问“时间比”较大,典型的为100:11000:1,每次传送的页较大; 相同点:把程序中常用的部分驻留在高速的

38、存储器中 不用的部分放在低速的存储器中 换入换出由硬件或操作系统完成,对用户透明 降低价格、增大性价比。,虚拟存储器,虚似存储器的功能与特点 虚拟存储器是“主存外存”层次; 使计算机的存取容量达到辅存的容量; 使计算机存储速度接近主存的速度; 使计算机整个存储系统的成本接近辅存的成本。 主存外存层次的基本信息传送单位可采用三种不同的方案:段、页或段页,这就形成了 页式虚拟存储器 段式虚拟存储器 段页式虚拟存储器。,虚拟存储器,1、页式虚拟存储器 概念 以页为信息传送单位的虚拟存储器,即在这种虚拟存储器中,不论是虚拟空间,还是主存空间都被分成大小相等的页,称为页面。 (A)逻辑页:虚存空间,虚拟

39、地址分为两个字段:高位字段为逻辑页号,低位字段为页内行地址; (B)物理页:主存空间,实存地址也分为两个字段:高位字段为物理页号,低位字段为页内行地址 页面大小都是相等的,所以页内行地址(位数)是相等的。,虚拟存储器,1、页式虚拟存储器 工作原理 一般方法 (A)CPU提供虚地址:逻辑地址+页内地址 (B)访问页表:页表基址寄存器+逻辑页号 (C)查表。若页面命中:主存地址:物理页号+页内地址 若未命中:启动I/O系统,从外存调入主存。 改进 快表+慢表方法:快表由硬件组成,只是慢表的小副本。查表时,由逻辑页号同时去查快表和慢表,当在快表中有此逻辑页号时,就能很快地把找到的对应的物理页号送入主

40、存地址寄存器,并使慢表的查找作废。如果在快表中查不到,那就要多一个访问主存的时间查慢表,从中查到物理页号送入实存地址寄存器,同时,将此逻辑页号和对应的物理页号送入快表,替换快表中应该移掉的内容。 优点:管理方便,空间利用率高 缺点:页的处理,保护,共享等不方便。,虚拟存储器,虚拟存储器,2、段式虚拟存储器 段式虚拟存储器是以程序的逻辑结构所形成的段(如过程,子程度等)作为主存空间分配单位的虚拟存储管理方式,由于各段的长度因程序而异,虚拟地址由段号和段内地址组成。 为了把虚拟地址变换成实存地址,需要一个段表,段表是表示虚段(程序的逻辑结构)与实段(主存中所存放的位置)之间关系的对照表,段表也是一

41、个段,每一段驻留在主存中,也可存放在外存中,需要时再调入主存。 虚存地址:段号+段内地址 地址变换,虚拟存储器,2、段式虚拟存储器 段式虚拟存储器的优缺点: (1)优点: 段的界线分明,就是程序的自然分界。 段易于编译、管理、修改和保护。 便于多道程序共享。 某些类似的段(如堆栈,队例)具有可变长度,允许自由调度,以便有效利用主存空间。 (2)缺点:由于段的长度各不相同,段的起点和终点不定,给主存空间分配带来麻烦。容易在段间留下许多空余的零碎主存空间,不好利用,造成浪费。,虚拟存储器,虚拟存储器,3、段页式虚拟存储器 段页式虚拟存储器是段式虚拟存储器和页式虚拟存储器的结合。在这种方式中,把程序

42、按逻辑单位分段以后,再把段分成固定大小的页。程序在主存的调入调出操作是按页面为单位进行的,但又可以按段实现共享和保护。 可兼顾页式和段式的优点,其缺点是在地址变换过程中需要多次查表。 地址变换 在段页式虚拟存储器中,每道程序是通过一个段表和一组页表进行定位的。段表中的每一个表目对应一个段,每个表目有一个指向该段的页表起始地址(页号)及该段的控制保护信息。由页表指明该段各页在主存中的位置以及是否已装入、已修改等状态信息。目前,大中型机一般都采用这种段页式存储管理方式。,虚拟存储器,3、段页式虚拟存储器 多道程序:指有多个用户在机器上运行的情况,以多道程序为例:其虚拟地址应包括基号(用户标志号)、

43、段号、页号、页内地址,格式如下: 每道程序由若干段组成,每段又由若干页组成。由基号指明该道程序的段表起始地址(存放在基址寄存器中);由段表指明该段页表的起始地址;由页表指明该段各页在主存中的位置以及是否装入修改等控制信息。 设有四道程序(用户标志号为A、B、C、D),其基址寄存器内容分别为SA 、SB 、SC 、SD ,其逻辑地址到物理地址变换过程如图6.35所示,在主存中,每道程序有一个段表,A程序有3段,D程序有3段;每段有一张页表。段表的每行就表示相应页表的起始地址,而页表内的每行即为相应的物理页号。,虚拟存储器,图4.35 段页式虚拟存贮器的地址变换,基号(用户号) D 段号 1 页号

44、 0 页内地址 d,程序逻辑地址,A B C D,SA SB SC SD,D程序2段页表,D程序1段页表,D程序0段页表,D程序段表,A程序段表,基址寄存器,c+0 c+1 c+2,7 8 9,a b,SD+0 SD+1 SD+2,SA+0 SA+1 SA+2,b+0 b+1,4 5,1 2,a+0 a+1,页号 页内地址,实存地址,4,存储保护,由于多个用户对主存的共享,就有多个用户程序和系统软件存于主存中。为使系统能正常工作,要防止由于一个用户程序出错而破坏其他用户的程序和系统软件,还要防止用户程序不合法地访问不是分配给它的主存区域。为此,系统应提供存储保护。 存储保护主要包括: 存储区域

45、保护 访问方式保护。,存储区域保护,存储区域保护:对于不是虚拟的存储器,有系统软件设置程序的上、下界 对于虚拟的存储器: (1)页表保护 (2)键方式 (3)环保护方式,访问方式保护,对主存信息的使用可以有三种方式: 读(R) 写(W) 执行(E) 相应的访问方式保护就有R、W、E三种以及由这三种方式形成的逻辑组合。访问方式保护可以和上述区域保护结合起来使用。 为了有效地实现存储保护,还应该对计算机中某些寄存器的设置进行限制。, 本章小结,存储器两大功能是存储(Write)和取出(Read)。对存储器的三项基本要求是:大容量、高速度和低成本。 各类存储器具有不同的特点:半导体存储器速度快、成本

46、较高;磁表面存储器容量大、成本低但速度慢,无法与CPU高速处理信息的能力匹配。在计算机系统中,通常采用多级存储器体系结构,即高速缓冲存储器Cache、主存储器和外存储器组成的结构。 提高存储器速度可以采用许多措施:采用高速器件;采用高速缓冲存储器Cache;采用多体交叉存储器;采用相联存储器;加长存储器字长等。 为了扩大存储容量,可以采用虚拟存储器技术。虚拟存储器是建立在主存和辅存物理结构基础之上,由附加硬件装置以及操作系统存储管理软件组成的一种存储体系。虚拟存储器有页式、段式、段页式三类。,本 章 小 结,对存储器的要求是容量大、速度快、成本低。为了解决了这三方面的矛盾,计算机采用多级存储体

47、系结构,即cache、主存和外存。CPU能直接方问内存(cache、主存),但不能直接访问外存。存储器的技术指标有存储容量、存取时间、存储周期、存储器带宽。 广泛使用的SRAM和DRAM都是半导体随机读写存储器,前者速度比后者快,但集成度不如后者高。二者的优点是体积小,可靠性高,价格低廉,缺点是断电后不能保存信息。,本 章 小 结,只读存储器和闪速存储器正好弥补了SRAM和DRAM的缺点,即使断电也仍然保存原先写入的数据。特别是闪速存储器能提供高性能、低功耗、高可靠性以及移动性,是一种全新的存储器体系结构。 双端口存储器和多模块交叉存储器属于并行存储器结构。前者采用空间并行技术,后者采用时间并

48、行技术。这两种类型的存储器在科研和工程中大量使用。,本 章 小 结,cache是一种高速缓冲存储器,是为了解决CPU和主存之间速度不匹配而采用的一项重要的硬件技术,并且发展为多级cache体系,指令cache与数据cache分设体系。要求cache的命中率接近于1。主存与cache的地址映射有全相联、直接、组相联三种方式。其中组相联方式是前二者的折衷方案,适度地兼顾了二者的优点又尽量避免其缺点,从灵活性、命中率、硬件投资来说较为理想,因而得到了普遍采用。,返回,习题,用32Kx8位的EPROM 芯片组成128Kx8位的只读存储器,试问: 1、数据寄存器多少位? 2、地址寄存器多少位? 3、共需多少个EPROM芯片? 4、画出此存储器组成图,返回,习题,某机器中,已知分配有一个地址空间为0000H-3FFFH 的ROM区域,现在再用一种RAM芯片(8Kx8)形成40kx16位的RAM区域,起始地为6000H,假设RAM芯片有cs和WE信号控制端。Cpu的地址总线为A15A0,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1