当前位置:文档之家› 第6章 存储器层次结构

第6章 存储器层次结构

n局部性原理★

n存储器层次结构☆n高速缓存存储器☆

n到目前为止的计算机模型中,我们假设计算机的存储器系统是一个线性的字节数组,而CPU能够在一个常数时间内访问每个存储器位置。但它没有反映现代系统实际的工作方式。

n实际上,存储器系统是一个具有不同容量、成本和访问时间的存储设备的层次结构。

n如果你的程序需要的数据是存储在CPU寄存器中,那在指令的执行期间,在零个周期内就能访问到它们;如果存储在高速缓存中,需要1~30个周期;如存储在主存中,需要50~200个周期;如存储在磁盘上,需要大约几千万个周期

n作为一个程序员,需要理解存储器层次结构,它对应用程序的性能有着巨大的影响,这是因为计算机程序的一个称为局部性的基本属性引起的。

?不同矩阵乘法核心程序执行相同数量的算术操作,但有不同程度局部性,它们运行时间可以相差20倍

?本章将介绍基本的存储技术、局部性、高速缓冲存储器等内容。

n局部性原理★

n存储器层次结构☆n高速缓存存储器☆

?RAM(随机访问存储器,Random-Access Memory )–静态RAM (SRAM)

?每个cell使用6个晶体管电路存储一个位

?只要有电,就会无限期地保存它的值

?相对来说,对电子噪声等干扰不敏感

?比DRAM更快、更贵

–动态RAM (DRAM)

?每个cell使用1个电容和1个访问晶体管电路存储一个位

?每隔10-100 ms必须刷新值

?对干扰敏感

?比SRAM慢,便宜

ü拍、太、吉、兆、千、毫、微、纳(毫微)、皮(微微)、飞(毫微微)

?传统DRAM芯片

–所有cell被组织为d个supercell,每个supercell包含了w个cell,一个d×w的DRAM总共存储了dw位信息。supercell被组织成r行c 列的矩阵,即rc=d。

?步骤1(a): Row access strobe (RAS)选择row 2

?步骤1(b): 从DRAM阵列中拷贝Row 2到行缓冲区

?步骤2(a): Column access strobe (CAS)选择column 1。

?步骤2(b): 将Supercell(2,1)从行缓冲区拷贝到数据线,并最终传送回CPU

?作业:上网了解下内存接口类型和内存颗粒封装标准

?作业:上网了解下Rank、P-Bank、L-Bank、tRCD、CL、tRP的含义,然后通过一些内存查看软件查看下自己计算机的内存信息,

并尝试通过获得的信息,推算下内存容量

?增强DRAM(所有增强型DRAM都是以常规的DRAM为核心而建立的)–Fast page mode DRAM (FPM DRAM)

–Extended data out DRAM (EDO DRAM)

–Synchronous DRAM (SDRAM)

?使用时钟的上升沿作为控制信号,而不是采用异步控制信号。

–Double data-rate synchronous DRAM (DDR SDRAM)

?使用时钟的两个边沿作为控制信号,每次预取2bit

–Double data-rate 2 synchronous DRAM (DDR2 SDRAM)

?使用时钟的两个边沿作为控制信号,每次预取4bit

–Double data-rate 3 synchronous DRAM (DDR3 SDRAM)

?使用时钟的两个边沿作为控制信号,每次预取8bit

–Double data-rate 4 synchronous DRAM (DDR4 SDRAM)

?使用时钟的两个边沿作为控制信号,每次预取8bit,采用Bank Group架构–Rambus DRAM(RDRAM)

–Video RAM (VRAM)

?类似于FPM DRAM,但输出是通过将行缓冲进行移位得到的

?双端口(允许并行地读和写)

?核心频率、时钟频率和数据频率

–2007年6月,JEDEC (Joint Electron Device Engineering Council,电子元器件工业联合会)正式完成了DDR3内存技术标准的制定。同时,随着Intel 3/4系列的芯片组的发布,内存技术开始从

DDR2逐步转入DDR3体系。

–一般的DRAM内存颗粒有3种不同的频率指标:

?核心频率:即内存Cell阵列(Memory Cell Array)的工作频率

?时钟频率:指内存总线的工作频率,数据传输的I/O Buffer

也是受其控制。

?数据频率:指数据传送的频率,单位时间内数据预取的次数

,表示数据传输快慢。

?标准SDRAM分为PC 66、PC 100和PC 133几种,其芯片核心频率分别为66MHz、100MHz和133MHz,与系统总线时钟频率、数据频率都相等。

?DDR采用“2 bit Prefetch”的机制,这意味着每个时钟周期内存Cell 阵列都会发送2bit数据到I/O Buffer内暂存,以满足下个时钟周期的两次数据传送。所以DDR266的核心频率为133MHz,但数据频率提高到266MHz。

?DDR2引入了4bit预取和频率不对等的设计,控制I/O Buffer的时钟频率提升到核心频率的2倍,而数据传输频率仍为时钟频率的2倍,也就是说DDR2的数据传输频率达到核心频率的4倍

?DDR3则将预取位数提高到8bit,并将时钟频率提升为核心频率的4倍。假设其核心频率为100MHz,那么时钟频率就达到400MHz,数据传输频率则高达800MHz,这也就是DDR3 800的设计标准。

?数据传输速度

–在数据频率不断提升的过程中,内存的核心频率始终保持相对稳定,这主要受到DRAM结构的先天限制:作为一种并行传输的内存技术,DRAM核心无法达到很高的工作频率。

–但不管是哪种内存,都以64bit的数据块(即一个物理Bank位宽)传送数据,因此内存的数据传输速度为:数据频率*位宽/8

Byte/s。

–因此,PC100MHz的SDRAM的数据传输速度为800 MByte/s。

–DDR400内存又称为PC3200内存,前者是以数据频率来命名内存的,后者则是以数据传输速度来命名内存的。

–DDR2 800内存又称为PC6400。

?主频、外频和FSB

–主频: CPU的时钟频率。外频:系统总线的工作频率。

?主频=外频*倍频

–FSB(Front Side Bus): 连接CPU与北桥芯片的系统总线。

–CPU通过FSB连接到北桥芯片,进而通过北桥芯片和内存、显卡交换数据。FSB是CPU和外界交换数据的最主要通道。

–在P4以前,CPU的FSB数据频率等于其外频。P4 CPU采用了

Quad Pumped(4倍并发)技术,该技术可以使系统总线在一个时钟周期内传送4次数据,也就是传输效率是原来的4倍,相当于用了4条原来的前端总线来和内存发生联系。即数据频率是时钟频率的4倍。

?FSB和双通道内存技术

–对于P4 CPU来说,在外频仍然是133MHZ的时候,前端总线的数据频率变成了133X4=533MHz,当外频升到200MHz,前端总线变成800MHz,这就是所谓的533前端总线的P4和800前端总线的P4。他们的实际外频只有133和200,但由于人们保留了以前老的概念——前端总线就是外频,所以习惯了这样的叫法:533外频的P4和800外频的P4。

–在133的外频下,P4 CPU的数据频率为533MHz,而DDR的数据频率只有266MHz,出现了CPU和内存的数据频率不匹配的现象。

–为了解决这个问题,出现了所谓的双通道内存技术,两条内存使用两条通道一起工作,一起提供数据,等于速度又增加一倍,两条DDR266就有

266X2=533的速度,刚好是P4 CPU的前端总线速度,没有拖后腿的问题。

?QPI(QuickPath Interconnect,快速通道互联)

?对于1333MHz的FSB所提供的内存带宽是1333MHz×64bit/8=10667MB/s=10.67GB/s ,其与双通道的DDR2 667正好匹配,但如果使用双通道的DDR2 800、DDR2 1066的内存,这时候FSB的带宽就小于内存的带宽,更不用说对i7支持的三通道高频率DDR3内存搭配了。

?对于多处理器系统,如多个处理器共享一个FSB连接到北桥,再通过北桥里边的内存控制器来访问内存,则存在FSB抢占。如每个处理器通过单独的FSB连接到北桥,这样不同的处理器之间就不会出现一个处理器占用总线而另一个在等待的情况了,但是不同的处理器还是共用相同的内存控制器,这样不同的处理器之间还是要争夺内存的带宽。此外,在多处理器系统中,不同处理器之间需要进行缓存同步,在FSB这样的架构下,缓存同步要通过读写内存来实现,造成处理器缓存之间访问的延迟很大。随着处理器核心性能的提高,以及核心数量的急剧增长,FSB正在日益成为瓶颈,必须加以解决。

?此外,为与AMD的HT总线抗衡,Intel认识到,要想再通过单纯提高处理器外频和FSB,难以象以前那样带来更好的性能提升,所以2008年Intel推出了QPI总线。

?对于现在最新的CPU,整个北桥芯片都集成到CPU中,所以QPI总线也被集成到了CPU内部,主板只留下南桥芯片,CPU就依靠DMI(直接媒体接口)总线与南桥芯片通信(准确的说,是CPU内部的北桥芯片通过DMI总线与外部的南桥芯片通信)。

?DDR4

–采用8bit预取的Bank Group分组,每个Bank Group可以独立读写。

–从DDR3的多点分支总线到DDR4的点对点总线技术,如右图所示。

–3DS(3-Dimensional Stack,三维堆叠)技术是DDR4内存中最关键的技术之一,它用

来增大单颗芯片的容量。

–虽然DDR4内存标准规范早在2012年9月发布了,DRAM厂商也完成了对DDR4内存芯

片的研发,但据报道,DDR4内存最快也要

在2014年底的Haswell-E中才能见到。

?非易失性存储器

–非易失性存储器是掉电之后,仍然能够保存其信息的存储器。

–ROM(掩膜式只读存储器)

?在芯片制造过程中写入,使用时只读出,不能改变。

–PROM(可编程ROM)

?制造时,存储器全部设为0或1,用户有一次机会根据自己的

需要把某些位设为1或0。

–EPROM(可擦写可编程ROM)、EEPROM(电子可擦除PROM)?前者需要特殊的设备进行多次擦写和编程,后则不需要–Flash Memory

?类似于EEPROM,如Bios、MP3、USB闪存盘、SSD。

–固件:存储在ROM中的程序称为固件(firmware)。

[考研类试卷]计算机专业基础综合(存储器系统的层次结构)模拟试卷2.doc

[考研类试卷]计算机专业基础综合(存储器系统的层次结构)模拟试卷 2 一、单项选择题 1-40小题,每小题2分,共80分。下列每题给出的四个选项中,只有一个选项是最符合题目要求的。 1 下列关于DRAM和SRAM的说法中,错误的是( )。 Ⅰ.SRAM不是易失性存储器,而DRAM是易失性存储器 Ⅱ.DRAM比SRAM集成度更高,因此读写速度也更快 Ⅲ.主存只能由DRAM构成,而高速缓存只能由SRAM构成 Ⅳ.与SRAM相比,DRAM由于需要刷新,所以功耗较高 (A)Ⅱ、Ⅲ和Ⅳ (B)Ⅰ、Ⅲ和Ⅳ (C)Ⅰ、Ⅱ和Ⅲ (D)Ⅰ、Ⅱ、Ⅲ和Ⅳ 2 某机字长32位,主存容量1 MB,按字编址,块长512 B,Cache共可存放16个块,采用直接映射方式,则Cache地址长度为( )。 (A)11位 (B)13位 (C)18位 (D)20位 3 在Cache和主存构成的两级存储体系中,Cache的存取时间是100ns,主存的存取时间是1000ns。如果希望有效(平均)存取时间不超过(;ache存取时间的15%,则Cache的命中率至少应为( )。

(A)90% (B)98% (C)95% (D)99% 4 下列关于Cache写策略的论述中,错误的是( )。 (A)全写法(写直达法)充分保证Cache与主存的一致性 (B)采用全写法时,不需要为Cache行设置“脏位/修改位” (C)写回法(回写法)降低了主存带宽需求(即减少了Cache与主存之间的通信量) (D)多处理器系统通常采用写回法 5 假定用若干个8K×8位的芯片组成一个32K×32位的存储器,则地址41FDH所在芯片的最大地址是( )。 (A)0000H (B)4FFFH (C)5FFFH (D)7FFFH 6 某机器采用四体低位交叉存储器,现分别执行下述操作: (1)读取6个连续地址单元中存放的存储字,重复80次; (2)读取8个连续地址单元中存放的存储字,重复60次; 则(1)、(2)所花时间之比为( )。 (A)1:1

第3章习题--存储系统

第3章存储系统 一.判断题 1.计算机的主存是由RAM和ROM两种半导体存储器组成的。 2.CPU可以直接访问主存,而不能直接访问辅存。 3.外(辅)存比主存的存储容量大、存取速度快。 4.动态RAM和静态RAM都是易失性半导体存储器。 5.Cache的功能全部由硬件实现。 6.引入虚拟存储器的目的是为了加快辅存的存取速度。 7.多体交叉存储器主要是为了解决扩充容量的问题。 8.Cache和虚拟存储器的存储管理策略都利用了程序的局部性原理。 9.多级存储体系由Cache、主存和辅存构成。 10.在虚拟存储器中,当程序正在执行时,由编译器完成地址映射。 二.选择题 1.主(内)存用来存放。 A.程序 B.数据 C.微程序 D.程序和数据 2.下列存储器中,速度最慢的是。 A.半导体存储器 B.光盘存储器 C.磁带存储器 D.硬盘存储器 3.某一SRAM芯片,容量为16K×1位,则其地址线有。 A.14根 B.16K根 C.16根 D.32根 4.下列部件(设备)中,存取速度最快的是。 A.光盘存储器 B.CPU的寄存器 C.软盘存储器 D.硬盘存储器 5.在主存和CPU之间增加Cache的目的是。 A.扩大主存的容量 B.增加CPU中通用寄存器的数量 C.解决CPU和主存之间的速度匹配 D.代替CPU中的寄存器工作 6.计算机的存储器采用分级存储体系的目的是。 A.便于读写数据 B.减小机箱的体积 C.便于系统升级 D.解决存储容量、价格与存取速度间的矛盾 7.相联存储器是按进行寻址的存储器。 A.地址指定方式 B.堆栈存取方式 C.内容指定方式 D.地址指定与堆栈存取方式结合 8.某SRAM芯片,其容量为1K×8位,加上电源端和接地端后,该芯片的引出线的最少数目应为。 A.23 B.25 C.50 D.20 9.常用的虚拟存储器由两级存储器组成,其中辅存是大容量的磁表面存储器。 A.主存—辅存 B.快存—主存 C.快存—辅存 D.通用寄存器—主存 10.在Cache的地址映射中,若主存中的任意一块均可映射到Cache内的任意一快的位置上,则这种方法称为。 A.全相联映射 B.直接映射 C.组相联映射 D.混合映射 三.填空题

第7章 存储器分层体系结构 复习要点

第7章存储器分层体系结构复习要点 一、存储器概述和存储器芯片 1. 熟悉随机存取存储器、顺序存取存储器、直接存取存储器、相联存储器、只读存储器、读写存储器、非易失(不挥发)性存储器、易失(挥发)性存储器、静态存储器、动态存储器这些名称的含义。这些类型的存储器在计算机的层次结构存储系统中 按工作性质/存取方式分类: 随机存取存储器(RAM) :每个单元读写时间一样,且与各单元所在位置无关。如:内存。(注:原意主要强调地址译码时间相同。现在的DRAM芯片采用行缓冲,因而可能因为位置不同而使访问时间有所差别。) 顺序存取存储器(SAM):数据按顺序从存储载体的始端读出或写入,因而存取时间的长短与信息所在位置有关。例如:磁带。 直接存取存储器(DAM):直接定位到读写数据块,在读写数据块时按顺序进行。如磁盘。相联存储器(AM/CAM):按内容检索到存储位置进行读写。例如:快表。 按信息的可更改性分类: 读写存储器(Read / Write Memory):可读可写。 只读存储器(Read Only Memory):只能读不能写。 按断电后信息的可保存性分类: 非易失(不挥发)性存储器(Nonvolatile Memory) 信息可一直保留,不需电源维持。(如:ROM、磁表面存储器、光存储器等) 易失(挥发)性存储器(Volatile Memory) 电源关闭时信息自动丢失。(如:RAM、Cache)按功能/容量/速度/所在位置分类: 寄存器(Register)封装在CPU内,用于存放当前正在执行的指令和使用的数据;用触发器

实现,速度快,容量小(几~几十个)。 高速缓存(Cache)位于CPU内部或附近,用来存放当前要执行的局部程序段和数据;用SRAM实现,速度可与CPU匹配,容量小(几MB)。 内存储器MM(主存储器Main (Primary) Memory)位于CPU之外,用来存放已被启动的程序及所用的数据;用DRAM实现,速度较快,容量较大(几GB)。 外存储器AM (辅助存储器Auxiliary / Secondary Storage)位于主机之外,用来存放暂不运行的程序、数据或存档文件;用磁表面或光存储器实现,容量大而速度慢。 2. 层次结构存储系统中的寄存器、高速缓存、内存(主存)、外存它们所在的位置、工作速度、存储容量、成本等的相对大小和大致的数量级。这些存储器和前述各类存储器之间的对应关系。 3. 静态存储器和动态存储器的基本工作机制;动态存储器刷新的概念,按行刷新的含义。最大刷新周期的确定的依据是什么。DRAM的集中刷新、分散刷新和异步刷新的刷新操作与正常访存分别是如何安排的? 4. 了解SDRAM芯片中的突发传输方式 二、存储器容量的扩展及其与CPU的连接 1. 位扩展、字扩展、字位扩展方式,系统存储容量的计算,芯片数的计算,这几种扩展方式下的芯片(组)与片选信号的地址线分配,各芯片(组)的地址范围的计算、划分。片选信号用地址信号表示的逻辑表达式。 三、高速缓冲存储器(cache) 1. 直接映射、全相联映射、组相联映射三种方式映射关系;三种方式下的主存地址与cache 的行、内容之间的对应关系;cache容量的计算方法,注意区分数据区、标记、有效位。 2. CPU对cache的访问时,直接映射采用的是按地址进行查找的方法,而全相联映射采用

第6章 存储器层次结构

n局部性原理★ n存储器层次结构☆n高速缓存存储器☆

n到目前为止的计算机模型中,我们假设计算机的存储器系统是一个线性的字节数组,而CPU能够在一个常数时间内访问每个存储器位置。但它没有反映现代系统实际的工作方式。 n实际上,存储器系统是一个具有不同容量、成本和访问时间的存储设备的层次结构。 n如果你的程序需要的数据是存储在CPU寄存器中,那在指令的执行期间,在零个周期内就能访问到它们;如果存储在高速缓存中,需要1~30个周期;如存储在主存中,需要50~200个周期;如存储在磁盘上,需要大约几千万个周期 n作为一个程序员,需要理解存储器层次结构,它对应用程序的性能有着巨大的影响,这是因为计算机程序的一个称为局部性的基本属性引起的。

?不同矩阵乘法核心程序执行相同数量的算术操作,但有不同程度局部性,它们运行时间可以相差20倍 ?本章将介绍基本的存储技术、局部性、高速缓冲存储器等内容。

n局部性原理★ n存储器层次结构☆n高速缓存存储器☆

?RAM(随机访问存储器,Random-Access Memory )–静态RAM (SRAM) ?每个cell使用6个晶体管电路存储一个位 ?只要有电,就会无限期地保存它的值 ?相对来说,对电子噪声等干扰不敏感 ?比DRAM更快、更贵 –动态RAM (DRAM) ?每个cell使用1个电容和1个访问晶体管电路存储一个位 ?每隔10-100 ms必须刷新值 ?对干扰敏感 ?比SRAM慢,便宜 ü拍、太、吉、兆、千、毫、微、纳(毫微)、皮(微微)、飞(毫微微)

?传统DRAM芯片 –所有cell被组织为d个supercell,每个supercell包含了w个cell,一个d×w的DRAM总共存储了dw位信息。supercell被组织成r行c 列的矩阵,即rc=d。

第6章存储系统习题解答080916

思考题与习题解答: 1. 解释下列概念: 主存、辅存、Cache、RAM、SRAM、DRAM、ROM、PROM、EPROM、EEPROM、CDROM、Flash Memory、存取周期、存储器带宽、存储层次、直接映象、全相联映象、组相联映象、LRU、失效率、磁盘阵列、虚拟存储器 2. 说明存储器的存取时间与存取周期之间的联系与区别。 解:存取时间是指存储器从接收到CPU发来的读写命令和单元地址开始,到读出或写入数据所需的时间。 存取周期是指连续两次读写存储器所需的最小时间间隔。 两者都是反映存储器存取速度的指标,显然存取周期大于存取时间。在存储器进行读写操作时,由于存储元件本身的性能,做完一次存或取后,不能马上进行另外的存或取,需要一段稳定和恢复时间。存取周期就是存取时间加上存储单元的恢复稳定时间。 3. 什么是存储器的带宽?如果存储器总线宽度为32位,存取周期为250ns,该存储器带宽为多少? 解:存储器带宽是指每秒钟可以从存储器读出或向存储器写入的二进制位的数目,表明了一个存储器单位时间处理信息的能力。 若总线宽度为32位,存储周期为250ns,则: 存储器带宽=32Bit/250ns=128Mbit/s 4. 指出下列存储器哪些是易失性的?哪些是非易失性的?哪些是读出破坏性?哪些不是? DRAM,SRAM,ROM,Cache,磁盘,光盘 解:易失性:DRAM、SRAM和Cache;非易失性:ROM、磁盘和光盘 读出破坏性:DRAM,其余都不是读出破坏性。 5. ROM和RAM两者的差别是什么? 解:RAM是随机存取存储器,ROM是只读存储器。RAM是易失性的,一旦断电,则保存的信息全部消失,ROM为非易失性的,其信息可以长期保存,常用于存放一些固定的数据和程序,如计算机的自检程序、BIOS、BASIC解释程序等。 6. 简述“Cache-主存”和“主存-辅存”层次的区别。 解: “Cache-主存”“主存-辅存” 目的为了弥补主存速度的不足为了弥补主存容量的不足存储管理实现全部由专用硬件实现主要由软件实现 访问速度的比值 几比一几百比一 (第一级比第二级) 大小 典型的块(页)几十个字节几百到几千个字节 CPU对第二级的 可直接访问均通过第一级 访问方式 失效时CPU是否切换不切换切换到其它进程 7. 单级存储器的主要矛盾是什么?通常采取什么方法来解决?

相关主题
文本预览
相关文档 最新文档