第六章 存储器层次结构
6.1 存储技术
了解三种常见存储技术:RAM/ROM/磁盘;
RAM有SRAM和DRAM,特点和应用;
随机访问存储器(RAM)分为两类:静态的和动态的.静态RAM(SRAM)比动态RAM(DRAM)更快,但也更贵.SRAM用来作为高速缓存存储器,既可以在CPU芯片上,也可以在片下.DRAM用来作为主存以及图形系统的帧缓冲区.典型的,一个桌面系统的SRAM不会超过几兆字节,但是DRAM却有几百或几千兆字节
(1)SRAM:SRAM将每个位存储在一个双稳态的存储器单元里,他可以无限期的保存在两个不同的电压配置或状态之一.其他任何状态都是不稳定的,从不稳定状态开始,电路会迅速的装移到两个稳定状态中的一个,类似于钟摆.原则上,钟摆也能在垂直的位置无限期的保持平衡,但这个状态是亚稳态的
由于SRAM存储器单元的双稳态特性,只要有电,它就会永远的保持它的值.例如电子噪音
(2)DRAM
DRAM将每个位存储为对一个电容的充电.这个电容非常小.DRAM因此可以制造的非常密集,每个单元由一个电容和一个访问晶体管组成.但与SRAM不同,DRAM存储器单元对干扰非常敏感.数码照像机和摄像机中的传感器本质上就是DRAM单元的阵列
ROM有PROM,EPROM,E2PROM,FLASH;
如果断电,DRAM和SRAM会丢失他们的信息,从这个意义上说,他们是易失的.另一方面,非易失性存储器即使是在关电后,也仍然保存着他们的信息
虽然ROM中有的类型既可以读也可以写,但是他们整体上都称为只读存储器(ROM).ROM是以他们能够被重编程(写)的次数和对他们进行重编程所用的机制来区分的
(1)PROM(可编程ROM)只能被编程一次
(2)ERROM(可擦写可编程ROM)
(3)EERROM(电子可擦除PROM):闪存是一类非易失性存储器,基于EERROM,是一种重要的存储技术
磁盘是重点,涉及到后面的i/o和文件系统,做好相关练习
磁盘结构:盘片、磁道、扇区、间隙、柱面;磁盘驱动器
磁盘是由盘片组成的。每个盘片有两面或称为表面,表面覆盖着磁性记录材料。盘片中央有一个可以旋转的主轴,它使得盘片以固定的旋转速率旋转
下图展示了一个典型的磁盘表面的结构。每个表面是由一组称为磁道的同心圆组成的。每个被划分为一组扇区。每个扇区包含相等数量的数据位(通常512字节),这些数据编码在扇区上的磁性材料中。扇区之间由一些间隙分隔开,这些间隙中不存储数据位。间隙存储用来标识扇区的格式化拉
磁盘是由一个或多个叠放在一起的盘片组成的,他们被封装在一个密闭的包装里。整个装置通常称为磁盘驱动器,简称磁盘或旋转磁盘以使之区别于闪存的固态硬盘(SSD),SSD是没有移动的部分的
磁盘容量
一个磁盘上可以记录的最大位数称为它的最大容量,简称容量
磁盘容量是由以下技术因素决定的
- 记录密度
- 磁道密度
- 面密度
下面公式给出了一个磁盘的容量
访问时间:寻道、旋转、传送
通过沿着半径轴前后移动传动臂,驱动器可以将读写头定位在盘面上的任何磁道上,这样的机械运动称为寻道
任何时刻,所有的读写头都位于同一个柱面上
磁盘以扇区大小的块来读写数据,对扇区的访问时间有三个主要的部分:
- 寻道时间
- 旋转时间:最大旋转延迟是平均旋转延迟是他的一半
传送时间
逻辑磁盘块:这个很重要,内存可以看成字节数组、磁盘可以看成块数组
总线
I/O总线比系统总线和存储器总线慢,但是它可以容纳种类繁多的第三方I/O设备
- 通用串行总线
- 图形卡(或适配器)
- 主机总线适配器
CPU使用一种称为存储器映射I/O的技术来向I/O设备发出命令
数据总线、控制总线、地址总线
系统总线、存储总线、I/O总线:p395图要理解
读写事务:P389图要能理解
6.2 局部性
局部性原理:时间局部性、空间局部性,有能力者理解一下p429最后一段“存储器山”
一个编写良好的计算机程序常常具有良好的局部性,也就是说,他们倾向于引用邻近于其他最近引用过的数据项的数据项,或者最近引用过的数据项本身。这种倾向性,称为局部性原理,是一个持久的概念
(1)时间局部性:在一个具有良好时间局部性的程序中,被引用过一次的存储器位置很可能在不远的将来再被多次引用
(2)空间局部性:在一个具有良好空间局部性的程序中,如果一个存储器位置被引用了一次,那么程序很可能在不远的将来引用附近的一个存储器位置
有良好局部性的程序比局部性差的程序运行的更快
数据引用局部性
取指令局部性
6.3 存储器层次结构
存储层次结构:系统观(1+1>2)(举一反三:对称不对称加密形成的混合加密系统,混合动力汽车...)
中心思想:每层存储设备都是下一层的“缓存”
对照p408的表理解
- 缓存命中:当程序需要第k+1层的某个数据对象d时,他首先在当前存储在第k层的一个块中查找d,如果d刚好缓存在第k层中,则缓存命中
- 缓存不命中:k层中没有缓存数据对象d
- 缓存不命中的种类:如果第k层的缓存是空的,那么对任何数据对象的访问都会不命中。一个空的缓存有时称为冷缓存,此类不命中称为强制性不命中或冷不命中
6.4 高速缓存存储器
高速缓存结构(S,E,B,m):高速缓存组、高速缓存行、块
映射
抽取出被请求的字的过程:组选择,行匹配,字抽取
命中
缓存管理
参考地址:http://wenku.baidu.com/view/99e9496c25c52cc58bd6be9f.html?from=search###