Chapter 5 存储器(1)_第1页
Chapter 5 存储器(1)_第2页
Chapter 5 存储器(1)_第3页
Chapter 5 存储器(1)_第4页
Chapter 5 存储器(1)_第5页
已阅读5页,还剩77页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、电子科技大学计算机科学与工程学院电子科技大学计算机科学与工程学院 计算机组成与设计计算机组成与设计硬件硬件/ /软件接口软件接口大容量和高速度:大容量和高速度:开发存储器层次结构开发存储器层次结构电子科技大学计算机科学与工程学院电子科技大学计算机科学与工程学院 5.1 引言引言冯若依曼(Von Nouma)美籍匈牙利数学家 1903 1957存储程序概念。存储程序概念。要运行的程序必须先调入内存,然后再执行。程序程序MemoryCPULoadAllExecuteOne by one电子科技大学计算机科学与工程学院电子科技大学计算机科学与工程学院 基本术语及概念基本术语及概念n 存储器的分类 半

2、导体存储器1. 静态随机存储器 SRAM2. 动态随机存储器 DRAM 磁表面存储器:容量、存储周期容量、存储周期例:例:2GB 60ns容量、转速容量、转速例:例: 200GB 7200转转/分分3. 闪存 - Flash Memory电子科技大学计算机科学与工程学院电子科技大学计算机科学与工程学院 光盘存储器: 1. 1. CD-ROM:只读性光盘:只读性光盘 2. 2. WORM:写入式(只能写一次):写入式(只能写一次) 3. 3. CD-RW:可擦:可擦/ /写光盘写光盘基本术语及概念基本术语及概念DVD - Digital Versatile Disc 4.7GBVCD - Vid

3、eo Compact Disc 700MB电子科技大学计算机科学与工程学院电子科技大学计算机科学与工程学院 基本术语及概念基本术语及概念n 存储器存取方式 可按地址随机地访问任一存储单元 随机存取存储器(RAM) 访问时间与访问地址无关 顺序存取存储器(SAM)必须按顺序访问,例如:磁带。速度慢,现在已Out了。电子科技大学计算机科学与工程学院电子科技大学计算机科学与工程学院 n 存储器的主要性能指标 存储容量单位:Byte、KB、MB、GB 存取周期 CPU连续访存中平均一次存取操作所需的时间。基本术语及概念基本术语及概念电子科技大学计算机科学与工程学院电子科技大学计算机科学与工程学院 5.

4、1 引言引言控制器控制器数据路径数据路径存储器存储器处理器处理器输入输入输出输出指令指令数据数据 存储器向处理器提供指令和数据但问题是但问题是:存储器:存储器太小太小、太慢太慢?电子科技大学计算机科学与工程学院电子科技大学计算机科学与工程学院 5.1 引言引言n 局部性原理 时间局部性如果某个数据被访问,那么很快它有可能再次被访问。 空间局部性如果某个数据被访问,那么与它邻近的数据有可能很快被访问。Really? 别骗我!别骗我!电子科技大学计算机科学与工程学院电子科技大学计算机科学与工程学院 5.1 引言引言n 问题:存储器太小、太慢 办法:存储器系统分层结构控制器控制器 数据数据 路径路径

5、存储器存储器(内存内存)(DRAM)处理器处理器寄存器寄存器L1Cache(SRAM)L2Cache(SRAM)外存外存(硬盘硬盘)电子科技大学计算机科学与工程学院电子科技大学计算机科学与工程学院 n Static RAM(SRAM)静态存储器5.1 引言引言 用于制造寄存器、L1/L2 Cache 存取速度快:0.525ns(集成的更快) 集成度低、价格贵 功耗大电子科技大学计算机科学与工程学院电子科技大学计算机科学与工程学院 n Dynamic RAM(DRAM)动态存储器5.1 引言引言 用于计算机主存的制造 存取速度慢:5070ns 需周期性刷新 功耗小 集成度高,价格便宜电子科技大学

6、计算机科学与工程学院电子科技大学计算机科学与工程学院 5.1 引言引言处理器处理器数据行或数据行或块块命中命中: 数据在高数据在高层层存存储储器器缺失缺失: 数据没有位于高数据没有位于高层层存存储储器器电子科技大学计算机科学与工程学院电子科技大学计算机科学与工程学院 术语术语 命中率在高层存储器中找到访问数据的比例。 缺失率在高层存储器中没有找到访问数据的比例。缺失率 = 1 命中率电子科技大学计算机科学与工程学院电子科技大学计算机科学与工程学院 术语术语 命中时间访问高层存储器所需的时间。 缺失代价将数据块从低层搬到高层存储器并送到处理器所需的时间。判断时间 + 数据传送时间电子科技大学计算

7、机科学与工程学院电子科技大学计算机科学与工程学院 5.2 Cache5.2 Cache的基本原理的基本原理n DRAM的发展趋势 容量:4倍/3年 速度:2倍/10年电子科技大学计算机科学与工程学院电子科技大学计算机科学与工程学院 5.2 Cache5.2 Cache的基本原理的基本原理n CPU与Memory的速度差11010010001980 19811983 1984 1985 1986 1987 1988 19891990 1991 1992 1993 1994 1995 1996 1997 1998 1999 2000CPU1982增长:增长: 50% / 年年性能性能“Moores

8、 Law”DRAM电子科技大学计算机科学与工程学院电子科技大学计算机科学与工程学院 5.2 Cache5.2 Cache的基本原理的基本原理n 寻址的速度差异 寻址延时与制造材料的物理特性有关 带宽的增加并行传输:多位同时传输突发传输(Burst transfers)在一个读写周期内实现多次传输。电子科技大学计算机科学与工程学院电子科技大学计算机科学与工程学院 5.2 Cache5.2 Cache的基本原理的基本原理n 利用带宽支持存储器的分层结构 使用Cache支持访问的局部性 分层设计存储器,实现内存中大块数据的传输电子科技大学计算机科学与工程学院电子科技大学计算机科学与工程学院 当前计算

9、机的存储器结构当前计算机的存储器结构SystemControllerL1 CacheMain Memory(DRAM)GraphicsProcessor(I/O Bus)L2 CacheProcessor电子科技大学计算机科学与工程学院电子科技大学计算机科学与工程学院 CacheCache的原理的原理CPU主存主存Cachen 插入到CPU与主存间n 由快速SRAM实现n 存储程序的部分 指令 数据n 操作: 命中(在Cache中) 未命中 (不在Cache中)电子科技大学计算机科学与工程学院电子科技大学计算机科学与工程学院 实现实现CacheCache的的4 4个关键问题个关键问题1:数据块

10、放在Cache的什么地方?2:如何在Cache中找到所需的数据块?3:Cache未命中时如何转换数据块?4:写数据时如何写?A. 只写Cache?B. 只写Memory?C. 同时时写Cache和Memory?D. 其它?电子科技大学计算机科学与工程学院电子科技大学计算机科学与工程学院 基本的基本的CacheCache设计设计电子科技大学计算机科学与工程学院电子科技大学计算机科学与工程学院 基本的基本的CacheCache设计设计二者必须二者必须相等相等电子科技大学计算机科学与工程学院电子科技大学计算机科学与工程学院 基本的基本的CacheCache设计设计组号组号第第0页页7位位Cache组

11、号组号第第1页页组号组号第第15页页第第0页页第第1页页第第15页页第第16页页第第17页页第第31页页第第2032页页第第2033页页第第2047页页0组组1组组127组组主存主存组号组号组内页号组内页号页内地址页内地址XXYYZZ749定位定位Cache页,页,读取组号读取组号相等吗?相等吗?据此判断内存目标页据此判断内存目标页是否在是否在Cache中中电子科技大学计算机科学与工程学院电子科技大学计算机科学与工程学院 基本的基本的CacheCache设计设计n 特点:特点: 硬件硬件实现容易;实现容易; Cache Cache利用率低;利用率低;电子科技大学计算机科学与工程学院电子科技大学

12、计算机科学与工程学院 5.2.1 Cache5.2.1 Cache的访问的访问n 内存地址结构的设计内存地址结构的设计组号组号组内页号组内页号数据页(数据页(512B)4位位7位位9位位电子科技大学计算机科学与工程学院电子科技大学计算机科学与工程学院 5.2.1 Cache5.2.1 Cache的访问的访问n CacheCache地址结构的设计地址结构的设计标记位标记位有效位有效位数据页(数据页(512B)1位位7位位必须与主存页必须与主存页大小相同大小相同电子科技大学计算机科学与工程学院电子科技大学计算机科学与工程学院 5.2.1 Cache5.2.1 Cache的访问的访问00001010

13、0101110100100111010101110000101010XXXXXXXXX09 812 1119VTagData=DATAHIT电子科技大学计算机科学与工程学院电子科技大学计算机科学与工程学院 举例举例假设一个直接映射的Cache,有16KB数据,块大小4个字,地址32位,那么Cache总共有多少位?(即Cache的大小)参考答案:参考答案:MIPS中:32位/字=4字节/字块大小:4字/块=16字节/块=128位/块16KB分为:16K16=1K=1024(块)电子科技大学计算机科学与工程学院电子科技大学计算机科学与工程学院 举例举例数据块数据块0128bit有效位有效位1bit

14、标记位标记位18bit数据块数据块1有效位有效位标记位标记位数据块数据块1023有效位有效位标记位标记位1024电子科技大学计算机科学与工程学院电子科技大学计算机科学与工程学院 举例举例对于前面例子,若内存地址分别为100005和0 x100005的字节将分别映到Cache的哪一块?参考答案:n 对于内存地址100005 该内存地址位于第?块6249块块?6250块块?6251块块?6250块电子科技大学计算机科学与工程学院电子科技大学计算机科学与工程学院 10位举例举例参考答案:n 对于内存地址0 x100005010100000000000000000001500001十六进制十六进制二进

15、制二进制电子科技大学计算机科学与工程学院电子科技大学计算机科学与工程学院 缺失率与块大小缺失率与块大小电子科技大学计算机科学与工程学院电子科技大学计算机科学与工程学院 缺失率与块大小缺失率与块大小Cache块较大时,一 旦缺失,带来的延时和开销是比较大的。n 提前重启(early restart)当块中所需字一旦返回就马上执行,而不需要等待整个块都传过来再执行。 该技术用于指令访问,效果较好,因为指令通常是连续的。 该技术用于数据Cache效率要低一些,因为请求的数据其分布无法预知。电子科技大学计算机科学与工程学院电子科技大学计算机科学与工程学院 缺失率与块大小缺失率与块大小n 请求字优先/关

16、键字优先缺失时,先将请求字从存储器传输到Cache中,然后再传输该块的剩余部分,之后再从块的开始部分传输。该技术的延时性能比提前重启要好一些。电子科技大学计算机科学与工程学院电子科技大学计算机科学与工程学院 5.2.2 Cache的缺失处理的缺失处理n 指令Cache缺失的处理步骤 将PC 4送到存储器中 通知主存执行读操作,并等待主存访问完成 写Cache项,并设置Cache相关标志 重新取指令,此时指令在Cache中电子科技大学计算机科学与工程学院电子科技大学计算机科学与工程学院 5.2.3 写操作处理写操作处理n Write-through(写直达/通写)当需要写数据时(执行Store指

17、令),将数据同时写入Cache和主存中。优点:Cache和主存的内容保持一致。缺点:耗时长,效率低。电子科技大学计算机科学与工程学院电子科技大学计算机科学与工程学院 5.2.3 写操作处理写操作处理n 写缺失当要写的数据不在Cache中时,发生写缺失。1. 将主存中的数据块读到Cache;2. 将要写的数据写到Cache和主存中;为什么不直接写到为什么不直接写到Cache和主存?和主存?电子科技大学计算机科学与工程学院电子科技大学计算机科学与工程学院 5.2.3 写操作处理写操作处理n 写直达方法简单,但效率低下例如例如,10%的指令是store,没有Cache失缺的情况下,CPI为1.0,每

18、次写操作要额外花费100个周期,此时CPI为:CPI - ClockcyclePerInstruction电子科技大学计算机科学与工程学院电子科技大学计算机科学与工程学院 5.2.3 写操作处理写操作处理n 写缓冲(Write buffer)当有数据需要写入主存时:将数据写入Cache和写缓冲区(write buffer)后,处理器继续执行;当写主存操作完成后,写缓冲区里的数据被释放;若写缓冲区满,则处理器必须等待一个写操作完成后(释放一个空位)才能将数据写入写缓冲区。电子科技大学计算机科学与工程学院电子科技大学计算机科学与工程学院 5.2.3 写操作处理写操作处理n 写回机制(Write b

19、ack 回写)当有数据需要写入主存时: 先将数据写入Cache,并作已修改标记; 当被修改的Cache块被替换时才将Cache的内容写回主存;电子科技大学计算机科学与工程学院电子科技大学计算机科学与工程学院 精解精解n 写缺失时的策略 写直达/通写(write through)1. 写分配策略(write allocate)2. 写不分配策略(no write allocate) 写回机制/回写(write back)电子科技大学计算机科学与工程学院电子科技大学计算机科学与工程学院 5.2.4 5.2.4 例子:内置例子:内置FastMATHFastMATH处理器处理器n 嵌入式MIPS处理器

20、 12级流水线 每个时间周期能完一个指令和数据的存取 指令Cache和数据Cache分离 每个Cache的容量:电子科技大学计算机科学与工程学院电子科技大学计算机科学与工程学院 5.2.4 5.2.4 例子:内置例子:内置FastMATHFastMATH处理器处理器电子科技大学计算机科学与工程学院电子科技大学计算机科学与工程学院 5.2.4 5.2.4 例子:内置例子:内置FastMATHFastMATH处理器处理器n SPEC 2000的缺失率 指令Cache: 0.4% 数据Cache: 11.4% 加权平均: 3.2%电子科技大学计算机科学与工程学院电子科技大学计算机科学与工程学院 精解

21、精解n 分离Cache与混合Cache缺失率对比 Cache总容量:32KB 分离Cache的实际缺失率: 3.24% 混合Cache的实际缺失率: 3.18%电子科技大学计算机科学与工程学院电子科技大学计算机科学与工程学院 5.2.5 5.2.5 设计支持设计支持CacheCache的存储系统的存储系统n 主存是由DRAM构成 数据宽度固定 通过总线(Bus)与处理器连接总线频率比处理要慢很多假设:假设: 地址(address)传输需要1个总线周期 存储器存储需要15个总线周期 数据(data)传输需要1个总线周期电子科技大学计算机科学与工程学院电子科技大学计算机科学与工程学院 5.2.5

22、5.2.5 设计支持设计支持CacheCache的存储系统的存储系统如果一个Cache块有4个字,DRAM的宽度为1个字: 缺失代价: 每个总线周期传输的字节数:电子科技大学计算机科学与工程学院电子科技大学计算机科学与工程学院 1 1个字存储器带宽个字存储器带宽处理器Cache主存主存Bus1个字 缺失代价: 每个总线周期传输的字节数:电子科技大学计算机科学与工程学院电子科技大学计算机科学与工程学院 增加存储器带宽增加存储器带宽2 2个字宽度个字宽度处理器Cache主存主存MUXBus2个字 缺失代价: 每个总线周期传输的字节数:电子科技大学计算机科学与工程学院电子科技大学计算机科学与工程学院

23、 增加存储器带宽增加存储器带宽4 4个字宽度个字宽度处理器CacheBus交叉存储组织存储体存储体0#存储体存储体1#存储体存储体2#存储体存储体3# 缺失代价: 每个总线周期传输的字节数:电子科技大学计算机科学与工程学院电子科技大学计算机科学与工程学院 问题:问题:处理器CacheBus存储存储体体0#存储存储体体1#存储存储体体2#存储存储体体3#存储存储体体4#存储存储体体5#存储存储体体6#存储存储体体n#这样可能会更好!这样可能会更好!电子科技大学计算机科学与工程学院电子科技大学计算机科学与工程学院 存储器的最新发展存储器的最新发展n 双倍速率动态随机存储器Double Data R

24、ate DRAM 基本原理:在时钟的上升沿和下降沿各传输一次数据。电子科技大学计算机科学与工程学院电子科技大学计算机科学与工程学院 小结小结n Cache块越大,则Cache的命中率越高,效率也高,但缺失代价也越大。n 为避免性能损失 增加主存带宽 增加存储器位宽 交叉存取电子科技大学计算机科学与工程学院电子科技大学计算机科学与工程学院 小测验小测验在Cache设计时,下面哪些指导思想是正确的?A. 存储器延时越短,cache块小B. 存储器延时越短,cache块大C. 存储器带宽越高,cache块小D. 存储器带宽越高,cache块大电子科技大学计算机科学与工程学院电子科技大学计算机科学与工

25、程学院 5.3 Cache 5.3 Cache 性能的评估与改进性能的评估与改进n 本节要介绍的内容 探讨评测和分析Cache性能的方法 减少争用Cache块的概率 采用多级高速缓存 改进Cache性能的方法电子科技大学计算机科学与工程学院电子科技大学计算机科学与工程学院 5.3 Cache 5.3 Cache 性能的评估与改进性能的评估与改进n CPU的时间可以划分为 程序执行时间 主要是Cache未命中的时间 存储器的阻塞时间CPU时间 = CPU执行时间+存储器的阻塞时间电子科技大学计算机科学与工程学院电子科技大学计算机科学与工程学院 5.3 Cache 5.3 Cache 性能的评估与

26、改进性能的评估与改进n 存储器的阻塞时间分为: 读操作阻塞 写操作阻塞在大部分写直达Cache中,读和写的缺失代价是一样的,因此:平均每个程序的访存次数电子科技大学计算机科学与工程学院电子科技大学计算机科学与工程学院 例:例:Cache Cache 性能计算性能计算问题:处理器实际的CPI是多少? 指令Cache(I_Cache)的缺失率:2% 数据Cache(D_Cache)的缺失率:4% 缺失代价:100个时间周期 Store/load指令占:36%假定: 处理器的CPI(理想) :2电子科技大学计算机科学与工程学院电子科技大学计算机科学与工程学院 例:例:Cache Cache 性能计算

27、性能计算平均每条指令缺失的时钟周期:参考答案:平均每条指令数据缺失的时钟周期:实际CPI电子科技大学计算机科学与工程学院电子科技大学计算机科学与工程学院 例:例:Cache Cache 性能计算性能计算,其它不变假设:实际CPI存储器阻塞花费时间占整个执行时间的比例:电子科技大学计算机科学与工程学院电子科技大学计算机科学与工程学院 平均存储器访问时间平均存储器访问时间AMATAMATn AMAT AveragememoryaccesstimeAMAT=命中时间+缺失率缺失代价例如: CPU时钟周期:1ns 缺失代价:20个时钟周期 指令缺失率:0.05 Cache访问时间(命中时间):1个时钟

28、周期AMAT=1+0.0520=2(个时钟周期)=2ns电子科技大学计算机科学与工程学院电子科技大学计算机科学与工程学院 5.3.1 5.3.1 通过灵活放置块来减少通过灵活放置块来减少CacheCache的缺失的缺失n 将数据块放入Cache的方法 直接映射法 硬件硬件实现实现容易,容易,CacheCache利用率低利用率低 全相联映射法一个数据块可映射到一个数据块可映射到CacheCache的任何位置的任何位置检索项多、硬件实现复杂,检索项多、硬件实现复杂,CacheCache利用利用率高率高电子科技大学计算机科学与工程学院电子科技大学计算机科学与工程学院 5.3.1 5.3.1 通过灵活

29、放置块来减少通过灵活放置块来减少CacheCache的缺失的缺失n 组相联映射电子科技大学计算机科学与工程学院电子科技大学计算机科学与工程学院 5.3.1 5.3.1 通过灵活放置块来减少通过灵活放置块来减少CacheCache的缺失的缺失n n路组相联映射假设: 主存:32位地址线 Cache大小:256KB 块大小:4KB n:4,即4路组组相联映射电子科技大学计算机科学与工程学院电子科技大学计算机科学与工程学院 Cache Cache 的设置的设置TagBlock 0TagBlock 1TagBlock 2TagBlock 3TagBlock 0TagBlock 1TagBlock 2T

30、agBlock 3TagBlock 0TagBlock 1TagBlock 2TagBlock 34路相联0组1组15组组的大小=44=16KBCache的组数 =25616=16最后组是15组电子科技大学计算机科学与工程学院电子科技大学计算机科学与工程学院 主存主存(Memory)(Memory)的设置的设置Block 0Block 1Block15Block 0Block 1Block 15Cache分为16组0组Block 0Block 1Block 151组65535组组的大小=164=64KB主存的组数 =23221064=65536最后组是65535组电子科技大学计算机科学与工程学

31、院电子科技大学计算机科学与工程学院 Cache - Cache - 主存主存(Memory) (Memory) 的映射关系的映射关系Block 0Block 1Block 15Block 0Block 1Block 15Block 0Block 1Block 15TagBlock 0TagBlock 1TagBlock 2TagBlock 3TagBlock 0TagBlock 1TagBlock 2TagBlock 3TagBlock 0TagBlock 1TagBlock 2TagBlock 30组1组15组0组1组65535组CacheMemory电子科技大学计算机科学与工程学院电子科技

32、大学计算机科学与工程学院 主存主存(Memory)(Memory)地址地址12 bits组内块号:01516 bits组号:0655354 bits块内寻址:块大小4K31011121516电子科技大学计算机科学与工程学院电子科技大学计算机科学与工程学院 Cache Cache 的标志的标志 ( Tag )( Tag )1 bit16 bits有效位Tag数据块数据块Data问题(针对前面的假设):主存地址:101A 1234 (Hex)计算:该地址数据放入Cache后,在Cache中的的块号及对应Cache项的Tag是多少?内存中的组号电子科技大学计算机科学与工程学院电子科技大学计算机科学与工程学院 问题解答问题解答(1)(1):1. 首先计算该地址在主存的块号:n该地址所在的块号是:2. 分析块号n在主存中的组号及组内序号在主存中的组号:101AH组内序号:1H(每组有16个块

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论