资源描述
第4章 存储器和高速缓存技术,4.1 存储器和存储器件,4.1.1 存储器的分类,存储器根据用途和特点可以分为两大类: 1.内部存储器,简称为内存或主存 快速存取 容量受限制 2.外部存储器,简称为外存 容量大 速度慢,4.1 存储器和存储器件,存储器容量以字节为单元,常用的有 210字节=1KB, 220字节=1024KB=1MB, 230字节=1024MB=1GB, 240字节=1024GB=1TB,4.1.2 微型计算机内存的行列结构,4.1 存储器和存储器件,在微机中,存储器按8位二进制数(一个字节)编址,每一个单元都有一个地址。 计算机内存采用行列结构。,图4.1 32行32列组成的矩阵和外部的连接,4.1 存储器和存储器件, 易失性 只读性 存储容量 速度 功耗,4.1.3 选择存储器件的考虑因素,4.1 存储器和存储器件,1. SRAM 由双稳电路构成,存储信息稳定。 速度快,功耗大,容量小。用于存储容量较小的系统中。,4.1.4 随机存取存储器RAM,4.1 存储器和存储器件,典型RAM芯片举例:静态RAM Intel 2114,静态RAM Intel 2114 1K4的SRAM,1024个字,数据线4条,地址线10 根。,6.2.1:静态存储电路,4.1 存储器和存储器件,地址线的引脚与芯片的单元数有关 数据线的引脚与芯片的字长有关 地址范围从全0到全1的所有编码,4.1 存储器和存储器件,利用电容存储电荷的原理保存信息,由于电容存在的漏电现象而使其存储的信息不稳定,故DRAM芯片需要定时刷新。 容量高,功耗低,需要刷新。用于大容量的系统中。,2. DRAM,4.1 存储器和存储器件,从上一次对整个存储器刷新结束时刻,到本次对整个存储器完成全部刷新一遍为止,这一段时间间隔称为刷新周期。一般为2ms,4ms或8ms。 刷新方法:动态MOS存储器通常采用逐行“读出”方式进行刷新,并且通常采用一次刷新一行存储元的方法。 常用的刷新方式有三种,一种是集中式,另一种是分散式,第三种是异步式。,DRAM的刷新,在整个刷新间隔内,前一段时间重复进行读/写周期或维持周期,不进行任何刷新操作。等到需要进行刷新操作时,则暂停读/写或维持周期,逐行且集中地刷新整个存储器,它适用于高速存储器。 以2116芯片为例: 假设芯片的信息维持时间为2ms,若采用集中式刷新,则如下图所示:,集中式刷新:,这种刷新方法的特点: (1)由于刷新工作集中进行,对芯片的正常读/写周期不 产生影响; (2)同样由于刷新工作的集中进行,会造成芯片“死时间” 过长的问题。 (因为芯片在刷新过程中,需禁止外部I/O的读/写操作),把一个存储系统周期tc分为两半,周期前半段时间tm用来读/写操作或维持信息,周期后半段时间tr作为刷新操作时间。对于2116芯片来说,每经过128个系统周期时间,整个存储器便全部刷新一遍。 假设存储器片的读/写周期为0.5 s,则系统周期时间为1s,每隔128s,整个存储器便被刷新一次。,分散式刷新:,显然,这种方法的缺陷至少有两点: (1)增加了系统周期,进而降低了系统速度; (2)刷新过于频繁。,是前两种方式的结合。例如:2ms内分散地把128行刷新一遍:2000s12815.5 s,即每隔15.5 s刷新一行。,异步式刷新方式,4.1 存储器和存储器件,刷新 一次刷新过程就是对存储器进行一次读取、放大和再写入。 方法:常用的是“只有行地址有效”。 DRAM控制器 时序功能 地址处理功能 仲裁功能,4.1 存储器和存储器件,图4.2 DRAM控制器的原理图,4.1 存储器和存储器件,4.1.5 只读存储器ROM,掩膜ROM 可编程只读ROM 可读写ROM 闪烁存储器,分 类,EPROM(紫外线擦除) EEPROM(电擦除),4.2 存储器的连接, 高速CPU和较低速度存储器之间的速度匹配问题。 高速CPU与低速存储器之间的速度如果不匹配,应在CPU访问存储器的周期内插入等待脉冲TW。,4.2.1 存储器和CPU的连接考虑,4.2 存储器的连接, CPU总线的负载能力问题。 一个存储器系统,通常由多片存储器芯片组成,需加驱动器。,4.2 存储器的连接, 片选信号和行地址、列地址的产生机制。 存储器往往由多片存储器芯片组成,在CPU与存储器芯片之间必须设有片选择译码电路,一般由CPU的高位地址译码产生片选,而低位地址送给存储器芯片的地址输入端,以提供存储芯片内部的行、列地址。,4.2 存储器的连接, 对芯片内部的寻址方法 用行列矩阵结构对存储单元进行选择,在CPU连接时,通过低位地址线和芯片连接,为芯片提供行地址和列地址。, 存储体 存储器芯片的主要部分,用来存储信息 地址译码电路 根据输入的地址编码来选中芯片内某个特定的存储单元 片选和读写控制逻辑 选中存储芯片,控制读写操作,4.2 存储器的连接,4.2 存储器的连接,全译码法 适用于组合容量较大的存储器 结构复杂 部分译码法 线译码法 适用于容量较小的存储器 结构简单,4.2.2 片选信号的构成方法,4.2 存储器的连接,全译码示例:,4.2 存储器的连接,部分译码示例:,4.2 存储器的连接,A14 A1300的情况不能出现 00000H01FFFH的地址不可使用,线选译码示例:,存储器容量扩展的三种方法,1、位扩展,要求:用1K4位的SRAM芯片 1K8位的SRAM存储器,1、位扩展,容量= 2108位 举例验证: 读地址为0 的存储单元的内容,1、位扩展,要点: (1)芯片的地址线A、读写控制信号WE#、片选信号CS#分别连在一起; (2)芯片的数据线D分别对应于所搭建的存储器的高若干位和低若干位。,2、字扩展,要求: 用1K位的SRAM芯片 2K8位的SRAM存储器,2、字扩展,分析地址: A10用于选择芯片 A9A0用于选择芯片内的某一存储单元,2、字扩展,容量= 211 8位 举例验证: 读地址为 0的存储单元的内容 读地址为 10 0 的存储单元 的内容,2、字扩展,要点: (1)芯片的数据线D、读写控制信号WE#分别连在一起; (2)存储器地址线A的低若干位连接各芯片的地址线; (3)存储器地址线A的高若干位作用于各芯片的片选信号CS#。,3、字位扩展,需扩展的存储器容量为M N位 , 已有芯片的容量为L K位 (LM,KN),用M/L 组 芯片进行字扩展; 每组内有N/K 个 芯片进行位扩展。,1、根据CPU芯片提供的地址线数目,确定CPU访存的地址范围,并写出相应的二进制地址码; 2、根据地址范围的容量,确定各种类型存储器芯片的数目和扩展方法; 3、分配CPU地址线。CPU地址线的低位(数量存储芯片的地址线数量)直接连接存储芯片的地址线;CPU高位地址线皆参与形成存储芯片的片选信号; 4、连接数据线、R/W#等其他信号线,MREQ#信号一般可用作地址译码器的使能信号。 需要说明的是,主存的扩展及与CPU连接在做法上并不唯一,应该具体问题具体分析,三、主存储器与CPU的连接,举例,例1:设CPU有16根地址线,8根数据线,并用MREQ#作访存控制信号(低电平有效),用R/W#作读/写控制信号(高电平为读,低电平为写)。现有下列存储芯片:1K*4位SRAM;4K*8位SRAM;8K*8位SRAM;2K*8位ROM;4K*8位ROM;8K*8位ROM;及3:8译码器和各种门电路。 要求:主存的地址空间满足下述条件:最小8K地址为系统程序区(ROM区),与其相邻的16K地址为用户程序区(RAM区),最大4K地址空间为系统程序区(ROM区)。 请画出存储芯片的片选逻辑,存储芯片的种类、片数 画出CPU与存储器的连接图。,解:首先根据题目的地址范围写出相应的二进制地址码。,解题,第二步:选择芯片 最小8K系统程序区8K*8位ROM,1片 16K用户程序区8K*8位SRAM, 2片; 4K系统程序工作区4K*8位SRAM, 1片。 第三步,分配CPU地址线。 CPU的低13位地址线A12A0与1片8K*8位ROM和两片8K*8位SRAM芯片提供的地址线相连;将CPU的低12位地址线A11A0与1片4K*8位SRAM芯片提供的地址线相连。 第四步,译码产生片选信号。,例2,例2: 设有若干片256K8位的SRAM芯片,问如何构成2048K32位的存储器?需要多少片RAM芯片?该存储器需要多少根地址线?画出该存储器与CPU连接的结构图,设CPU的接口信号有地址信号、数据信号、控制信号MREQ#和R/W#。 解:采用字位扩展的方法。 SRAM芯片个数:2048K/256K 32/8 = 32片 每4片一组进行位扩展,共8组芯片进行字扩展 片选:该存储器需要21条地址线A20A0,其中高3位用于芯片选择接到74LS138芯片的CBA,低18位接到存储器芯片地址。 MREQ#:作为译码器的使能信号。,例3: 用1k*4 的片子 2114 组成 2k*8 的存储器,控制信号:访存信号IO/M与读写信号WR.,静态随机存储器举例:2114应用,例3,试分析各芯片的地址范围?,若要将存储器地址布置在2400H开始的的单元,片选信号如何接线? 分析: A15 A14 A13A12 A11 A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0 0 0 1 0 0 1 0 0 0000 0000 1 1 1111 1111 第一组地址:2400H27FFH,译码器输出的第9个信号作片选 0 0 1 0 1 0 0 0 0000 0000 1 1 1111 1111 第二组地址:2800H2BFFH ,译码器输出的第10个信号作片选,片内寻址,4.2 存储器的连接,4.3.1层次化的存储器体系结构,1.层次化总体结构,存储器层次化总体结构,4.3.1层次化的存储器体系结构,PC机的内存组织,2.内存的分区结构,4.3.1层次化的存储器体系结构,基本内存区的组织,(1)基本内存区,4.3.1层次化的存储器体系结构,高端内存区的组织,(2)高端内存区,4.3.1层次化的存储器体系结构,(3)扩充内存区,用高端内存区64KB映射扩充内存的1个页组,4.3.1层次化的存储器体系结构,指1MB以上但不是通过内存扩充卡映射来获得的内存空间。 扩展内存在32位CPU的直接寻址范围内。,(4)扩展内存区,4.3.2 微机计算机系统的内存组织,1. 16位微机系统的内存组织,0,7,8,15,4.3.2 微机计算机系统的内存组织,2. 32位微机系统的内存组织,4.4.1 虚拟储存技术和三类地址,1、虚拟存储技术 2、段式虚拟存储和页式虚拟存储 分段特点: 每段的长度不是固定的 每个段都是受到保护的独立的空间 分页特点: 一个系统中的所有页面大小固定 页面的起点和终点也固定 只有分页机制才支持虚拟存储,4.4.1 虚拟储存技术和三类地址,3、逻辑地址、线性地址和物理地址 逻辑地址特点: 这是程序员编写的源程序中使用的地址 完整的逻辑地址一共48位 逻辑地址中的选择子对应于一个段基址 线性地址特点: 线性地址是由2个32位量相加而成的 段基址由段描述符得到 线性地址是分为3个字段来体现其功能,4.4.2 分段管理,三种描述符表 全局描述符表GDT 局部描述符表LDT 中断描述符表IDT 描述符表三个优点: 可大大扩展存储空间 可实现虚拟存储 可实现多任务隔离,4.4.3 段选择子、段描述符和段描述符表,段选择子,4.4.3段选择子、段描述符和段描述符表,段描述符,4.4.3段选择子、段描述符和段描述符表,描述符表,4.4.4 逻辑地址转换为线性地址,4.4.5 分页管理,分页功能涉及两个表: 页组目录项表 页表,4.4.6 线性地址转换为物理地址,分页机构实现线性地址到物理地址的转换,4.4.6 线性地址转换为物理地址,图4.20 线性地址转换为物理地址的例子,4.4.7转换检测缓冲器TLB,转换检测缓冲器TLB的功能,4.5.1 Cache概述,由于CPU与主存之间在执行速度上存在较大的差异,为提高CPU的效率,并考虑到价格因素,基于程序的局部性原理,在CPU与主存之间增加的高速缓冲存储器Cache技术。,4.5.1 Cache概述,Cache模块 主存 Cache控制器,Cache系统包含三个部分:,基本原理: 当CPU要读取主存中一个字时,总是将存放该字的内存地址同时发给cache和主存。此时,cache控制逻辑立即依据地址,判断该字当前是否已在 cache中: 若是,将此字立即传送给CPU,CPU无需再访问主存(让主存访问失效); 若非,则用主存读周期把此字从主存读出送到CPU,与此同时:把含有这个字的数据块从主存读出并装入到cache中,将Cache中较旧的内容(块)替换掉。,4.5.2 Cache的组织方式,按照主存和Cache之间的映像关系,Cache有三种组织方式。即:,全相联方式 (fully associative) 直接映像方式 (direct mapped) 组相联方式 (set associative),4.5.2 Cache的组织方式,Cache的三种组织方式:,4.5.2 Cache的组织方式,全相联Cache的例子:,4.5.2 Cache的组织方式,优点:可使主存的一个块直接拷贝到cache中的任意一行上,非常灵活。 缺点:比较电路难于设计和实现,尤其当Cache有一定容量时,查找某块(行)比较麻烦。,全相联Cache,4.5.2 Cache的组织方式,直接映像Cache的例子:,4.5.2 Cache的组织方式,优点:硬件简单,成本低。 缺点:是每个主存块只有一个固定的行位置可存放,容易产生冲突和Cache空间使用效率的降低。,直接映像Cache,4.5.2 Cache的组织方式,组相联Cache的例子:,4.5.3 Cache的数据更新方法,两类一致性问题: 数据丢失 数据过时,4.5.4 Cache控制器82385,Cache控制器82385的管理体现于以下几方面: Cache和主存的映像关系处理 未命中Cache时的处理 Cache的数据更新,4.5.4 Cache控制器82385,82385通过片内的Cache目录使外部的32KBCache和4GB的主存之间实现映像,可以采用两种常用的方法:直接映像方式和双路组相联映像方式。82385的引脚2W/D用于这两种方式的选择。,82385工作于直接映像方式时Cache目录、Cache及主存之间的关系 :,1. 82385控制的直接映像方式Cache系统,4.5.4 Cache控制器82385,直接映像方式下82385从Cache中选1个区块,4.5.4 Cache控制器82385,82385工作于双路组相联方式时Cache目录、Cache及主存之间的关系图 :,2. 82385控制的双路组相联方式Cache子系统,4.5.4 Cache控制器82385,双路组相联方式下,82385从Cache中选个区块,4.5.4 Cache控制器82385,
展开阅读全文