版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、1,第三章 存储系统,2,3.1 存储系统概述,一、存储器分类,1、按存储介质分类 存储介质必须有区别明显的两个物理状态(表示0/1),*半导体存储器:如内存; *磁性材料存储器:如磁盘、磁带; *光介质存储器:如光盘,2、按存取方式及功能分类,*顺序存取存储器(SAM):按记录块为单位进行编址, 存取时间与读/写头到访问地址的相对位置有关; *随机存取存储器(RAM):按存储字为单位进行编址, 存取时间与访问的地址无关(时间固定);,3,3、按在计算机中的作用分类,*直接存取存储器(DAM): 信息存取区域定位与RAM类似,区域内操作与SAM类似;,*只读存储器(ROM):操作方式为只能取、
2、不能存 可由RAM或DAM构成,信息读取的定位由存储器结构决定,*主存储器(MM):可直接与CPU交换信息的MEM 构成MOS型半导体、动态RAM和ROM *辅助存储器(AM):主存的后援MEM 构成磁性/光介质材料、SAM/DAM,*高速缓冲存储器(Cache):CPU与主存间的缓冲MEM 构成MOS型半导体、静态RAM,*控制存储器(CM):CPU内部存放微程序的MEM 构成MOS型半导体、ROM,4,二、存储器的主要性能指标,*容量(S):能存储的二进制信息总量,常以字节(B)为单位,*速度(B):常用带宽、存取时间或存取周期表示 存取时间(TA)指MEM从收到命令到结果输出所需时间;
3、存取周期(TM)指连续访存的最小间隔时间,TM=TA+T恢复,*价格:常用总价格C或每位价格c表示,c=C/S。,带宽(BM)指单位时间内MEM最多可读写的二进制位数; BM=W/TM,其中W为一次读写的数据宽度, 常以bps为单位,5,三、层次结构存储系统,1、层次结构的引入,*程序访问局部性规律: 程序执行时,指令和数据呈现的相对簇聚特性。,*用户需求矛盾的解决方案:,*用户需求的矛盾:需求大容量、高速度、低价格 矛盾,时间局部性被访问过的信息,可能很快被再次访问; 空间局部性被访问信息的相邻信息,可能很快被访问,高速度、大容量、低价格,近期常用数据放在“前方”MEM(快而小)中; 近期不
4、用数据放在“后方”MEM(慢而大)中。,6,2、层次结构的存储系统 (1)层次存储系统组成,*思想:用多种类型MEM构成前方-后方的层次结构;,各层MEM之间信息传递是“透明”的,前方MEM中信息为后方MEM中信息的副本;,M1,M2,Mn,(2)常见的存储系统层次结构 围绕主存的层次结构一般为“Cache-主存-辅存”三种MEM构成的两个存储层次,7,*“Cache-主存”存储层次: -设置高速缓冲存储器 目标解决主存速度问题(Cache的速度,主存的容量),*“主存-辅存”存储层次: 目标解决主存容量问题(主存的速度,辅存的容量) 可能存在:(执行的)程序空间主存空间,8,(3)层次存储系
5、统的工作方式 *程序执行需求:即将执行的指令和数据存放在主存中,*层次存储系统的工作方式:,虚拟存储器,主存,9,3.2 半导体存储器基础,*静态RAM用触发器存储信息,长时间不访问及信息读出后信息值(状态)保持不变; *动态RAM用电容存储信息,长时间不访问及信息读出后信息值(状态)被破坏,需及时恢复信息值(称为刷新及再生)。,10,1、SRAM存储元的组成原理 存储元RAM中存储1位二进制信息的电路;,一、静态RAM(Static RAM,SRAM),保持使W=V地T5和T6截止T1、T2状态保持不变;,*6管MOS静态存储元工作原理:,11,2、SRAM芯片的组成原理,(1)存储芯片基本
6、组成 主要由存储阵列、地址译码器、I/O电路、控制电路等组成,*存储阵列:不同的存储单元有一维和二维两种组织方式,正方形阵列 减少信号延迟可减少连线长度 ,12,*地址译码器:有一维、二维两种译码方式 译码器输出线数2M根 22M/2根,*驱动器:X译码器每个输出需控制同一行各存储元的字选线 设置驱动器增加驱动能力 I/O电路输出时需驱动总线信号(负载大),常见译码方式二维译码方式 同一列存储元共用位选择线,13,*片选与控制电路: 片选MEM常由多个芯片组成,读/写操作常针对某个芯片,14,(2)SAM芯片参数与结构,*芯片相关参数: 存储阵列容量,数据引脚数量 地址引脚数量,15,3、SR
7、AM芯片的读写时序,*读周期时序: (存储器对外部信号的时序要求),16,*写周期时序:,17,二、动态存储器(Dynamic RAM,DRAM),动态RAM目标:降低功耗、节约成本,18,*单管MOS式动态存储元工作原理:,写入所写数据加到D上, 打开T1对CS充电或放电;,保持断开T1无放电回路信息存 储在CS中(会缓慢泄漏);,读出在D上加正脉冲对CD预充电, 打开T1读D上电压变化(破坏性读) CS得到充电,刷新步骤与读操作完全相同。,立即用所读数据对CS重新写入,称为再生,19,2、DRAM芯片的基本组成,20,(2)单管MOS式DRAM芯片的组成,*基本结构:通常采用地址分两次传送
8、方式组织 增设地址锁存器、时序控制电路,再生电路,*芯片操作:读、写、刷新(行刷新方式无列地址),21,(3)DRAM芯片组成示例 *Intel 4116芯片:单管MOS存储元、地址分两次传送 参数容量=16K1位;地址引脚=14/2=7根; 数据引脚=2根(单向DIN/DOUT、共1位宽度),结构2个64128存储阵列,时钟发生器串联,22,3、DRAM芯片的操作时序,*读周期时序:,23,*刷新周期时序: 与读周期类似,区别在于CAS在整个操作过程中无效 行刷新时不需要列地址,24,4、DRAM芯片的刷新 *刷新周期:同一存储元连续两次刷新的最大间隔; 与DRAM存储元材料及芯片组成有关,
9、*刷新方法:每个刷新周期内,循环进行所有行的行刷新,(1)DRAM芯片刷新方式 通常有集中式、分散式、异步式三种方式,*集中式刷新:将所有行刷新集中在刷新周期的后部,特点存在“死区”(不能进行读/写操作的时间段),25,*分散式刷新:将行刷新分散在每个存取周期中,特点避免了“死区”,增加了存取时间(1倍),*异步式刷新:将行刷新均匀分布在刷新周期中,特点“死区”可忽略,支持固有的存取周期 最常用,26,(2)DRAM芯片刷新实现 按约定的刷新方式,由专用电路定时产生行刷新命令,*DRAM芯片的刷新电路:,固化了刷新方式,*刷新电路在计算机的位置: 通常独立存在于DRAM芯片/模块之外 DRAM
10、控制器,产生行刷新地址,27,5、MOS型SRAM与DRAM芯片比较,*DRAM芯片的优点:,*DRAM芯片的缺点: DRAM速度远低于SRAM 使用动态元件(电容)所致,*RAM芯片应用: SRAM芯片常用来构成高速度、小容量MEM,如Cache DRAM芯片常用来构成大容量MEM,如主存,DRAM集成度远高于SRAM; 常采用单管MOS存储元 DRAM地址引脚是SRAM的一半;常采用地址分两次传送方式 DRAM功耗约为SRAM的1/4; 采用单管MOS存储元所致 DRAM成本远低于SRAM,28,三、只读存储器(Read only Memory,R0M),*ROM:信息注入MEM后不能再改
11、变,它具有非易失性,*半导体ROM:具有非易失性的半导体MEM,如EPROM、FLASH等,*ROM芯片组成:与SRAM类似,区别在于存储元的实现及操作,1、掩模ROM(MROM) *特征:用户不可修改信息; *存储元状态:用MOS管的有/无表示“1”/“0”;,*数据读出:字选线加电压时,位线电压为所选存储元的数据,29,2、可编程ROM(PROM) *特征:用户可一次性修改信息(电写入); *存储元状态:用二极管/熔丝的通/断表示“1”/“0”;,*数据写入:字线X加电压,若写0 VD=V地熔丝熔断, 若写1 VD=V中熔丝不断;,*数据读出:字线X加电压、VD=V中, 检测VD变化可读出
12、数据,30,3、可擦除可编程ROM(EPROM) *特征:用户可多次修改信息(电写入、光擦除); *存储元状态:常用浮栅雪崩注入MOS管(即FAMOS管)的浮栅Gf是/否带电荷表示“1”/“0”;,31,4、电可擦除可编程ROM(E2PROM) *特征:用户可多次修改信息(电写入、电擦除); *存储元状态:用浮栅隧道氧 化层MOS管(即Flotox管)的浮栅 是/否带电荷表示“1”/“0”;,32,5、闪速存储器(FLASH) *特征:用户可多次修改信息(电写入、电擦除); *存储元状态:与叠栅EPROM类似,但氧化层更薄,操作速度更快,33,3.3 主存储器,一、主存储器的组成,*主存储器相
13、关概念: 主存容量=主存单元长度主存单元个数,34,*应用对主存空间的需求:,*主存储器的组成: 由ROM、RAM芯片组成的特定存储字长的存储器; ROM空间大小固定、RAM空间大小可选配(最大空间),35,二、主存储器的逻辑设计,*主存逻辑设计:使用ROM、SRAM或DRAM芯片进行容量扩展,实现主存单元长度和主存单元个数。,*存储器容量扩展方法:位扩展法、字扩展法、字位扩展法,1、位扩展法 (又称并联扩展) *目的:扩展存储器的存储字长,*芯片连接特征: 各芯片数据引脚连接不同,其余引脚连接相同,36,例1用1K1位SRAM芯片构成1K4位存储模块,37,2、字扩展法 (又称串联扩展) *
14、目的:扩展存储器的存储字数,例2用1K4位SRAM芯片构成2K4位存储模块,解:芯片数量,各芯片地址范围存储模块有log2(2K)=11位地址,,共需(2K4b)(1K4b)=2片;,各芯片片选有效逻辑0#、1#芯片分别为A10=0、A10=1,练习1用1M4位SRAM芯片构成4M4位存储模块,38,39,3、字位扩展法 *目的:同时扩展存储器的存储字长和存储字数,例3用1K4位SRAM芯片构成2K8位存储模块,解:芯片数量,共需(2K8b)(1K4b)=4片;,连接图,各芯片地址范围存储模块有log2(2K)=11位地址,,40,练习2用1K4位SRAM芯片构成4K8位存储模块,例4用1K4
15、位ROM、1K8位SRAM芯片构成4K8位存储模块,其中前1KB空间为只读空间,解:芯片数量,共需ROM 2片、SRAM 3片;,各芯片地址范围 模块有log2(4K)=12位地址 芯片有10位地址,连接图,41,三、提高访存速度的措施,*CPU的访存特征: 一次访存的信息常为多个存储字, 多次访存的地址常为连续的;,1、多模块存储器 -多体存储器,42,2、高性能存储器,(1)EDO DRAM(Extended Data Output DRAM,扩展数据输出DRAM) *提高性能思路:同时读出并缓冲一行信息,减小平均TM,*实现原理:用SRAM保存上次读操作的一行信息,当前读操作的行地址若与
16、上次读操作相同,则直接从SRAM中取出信息,(2)SDRAM(Synchronous DRAM,同步DRAM),MEM从所接收地址开始,连续读/写多个存储字(内部计数器产生各存储字地址),减少了多个地址连续数据传送的平均TM,(3)DDR SDRAM(Double Data Rate SDRAM,双数据速率DRAM),43,3、双端口存储器 -同时支持两个操作,*结构:2套译码+I/O+读写电路,1个存储阵列+判断逻辑电路,44,3.4 高速缓冲存储器,一、Cache的基本原理,*Cache的功能:是主存的快速缓冲器,*Cache的性能:,命中率(H)HC=NC/(NC+NM) 其中,NC、N
17、MCPU访存在Cache、主存中的命中次数,平均访问时间TA=HCTCache+(1-HC)TMem,45,1、Cache的存储空间管理,(1)Cache与主存的信息交换单位 *目标:尽量减小平均访问时间TA,*减小TA的方法分析: 提高HC,程序访问局部性,减小TMem,相邻信息一起在Cache中,*Cache与主存的信息交换单位:字块(又称块或行),46,(2)Cache的存储空间管理,*Cache阵列的编址单位:,与主存相同(字或字节);,*Cache与主存间的信息交换管理:交换单位为块,主存与Cache均划分成若干大小相同的块;,Cache块存放主存块信息时,标志对应主存块的块号;,0
18、 *,1 i,47,2、Cache的基本工作原理,*完成访问步骤:,访问Cache阵列,地址变换(主存地址Cache地址);,访问Cache阵列;,保持一致性(Cache与主存之间),*实现要求:全部工作均由硬件完成(对程序员透明)!,*相关技术映像规则、替换算法、写策略;,48,3、Cache的结构与组成,*存储体:由SRAM构成,*地址映像及变换机构:由目录表、比较器等组成; 目录表行数=Cache块数,表项=有效位+块标记+,地址映像机构决定查目录表的哪些行及块标记组成 影响变换的性能及成本,地址变换机构查表并比较,命中时直接形成Cache地址,不命中时调入块或替换块后再形成,49,*控
19、制器:Cache工作过程中所有的信号产生及时序控制,i,*替换机构:按替换算法选择某被替换块,再块写回及块调入,50,二、Cache的相关技术,1、地址映像及变换 *实现功能:某主存块可存放到Cache中哪些块位置?,(1)全相联地址映像及变换 *映像规则:主存块i可映射到Cache的任意一个块;,*性能指标:调入块时的块冲突概率、地址变换的速度与成本,51,*地址变换方法:,比较目录表所有行,命中时行号即为变换后的块号;,*特征:块映像块冲突概率最低; 地址变换速度最慢、或成本最高,52,例1:CPU支持最大主存容量1MB、按字节编址,块大小16B,Cache容量为8KB。全相联映像方式时,
20、主存地址格式及参数?Cache地址格式及参数?目录表行数?块标记位数? 若目录表项为,CPU访问36454H主存单元时,则Cache命中时的目录表项?,解:主存地址格式:,主存地址长度=log2(1MB/1B)=log2220=20位, 块内地址长度=log2(16B/1B)=log216=4位,,Cache有 个块, Cache块号位数= 位,,目录表行数= 行,块标记位数= 位;,Cache命中时目录表项=,53,(2)直接地址映像及变换 *映像规则:主存块i可映射到Cache的块j=(i mod G);,54,*地址变换方法:,比较目录表相应行,命中时主存地址的区内块号即为变换后的块号;
21、,*特征:块映像块冲突概率最高; 地址变换速度最快、成本最低,55,例2:CPU支持最大主存容量1MB、按字节编址,块大小16B,Cache容量为8KB。直接映像方式时, 主存及Cache地址格式及参数? 目录表行数?块标记位数? 若目录表项为,CPU访存地址为36454H时,则可能命中的Cache块号?命中时的目录表项?,解:主存地址20位、Cache地址13位,其中块内地址4位,,目录表行数= 行,块标记位数= 位;,可能命中的Cache块号=0 0100 0101,,命中时目录表项=,56,(3)组相联地址映像及变换 -直接映像与全相联映像的折中, n路组相联映像组内块数为n的组相联映像
22、,*映像规则:将Cache中块分组,每组为n个块(共G/n个组),主存块i可映像到Cache的第j组(j=i mod G/n)中的任意块。,57,*目录表的组织:种类每块一行式、每组一行式;,性能每组一行式较优(定位方便、并行查表),58,*地址变换方法:,*特征:块映像块冲突概率较低; (全相联映像x直接映像) 地址变换查表速度最快、成本较低,比较目录表相应组所有行,命中时主存地址的区内块号即为变换后的组号、组内各块比较结果的编码即为组内块号;,59,例3:CPU支持最大主存容量1MB、按字节编址,块大小16B,Cache容量8KB。采用4路组相联映像方式时, 主存及Cache地址格式及参数
23、? 目录表中块标记位数? 若目录表项为,CPU访存地址为36454H时,则可能命中的Cache块号?命中时的目录表项?,解:主存地址20位、Cache地址13位,其中块内地址4位,,目录表块标记位数= 位;,9,可能命中的Cache块号=100 0101XX,即组内任意块,,命中时目录表项=,60,2、替换算法 *实现功能:Cache无空位置时,如何选择 被替换的块?,*性能指标:对命中率H的影响程度、替换算法的实现开销,*常见替换算法:,RAND算法随机确定的块作为被替换块;,FIFO算法最早调入的块作为被替换块;,整个Cache需1个随机数发生器,H是随机的,LRU算法近期最少使用的块作为被替换块;,各个块的计数器:通常设置在目录表中,61,虚拟存储器,一、虚拟存储器概念,62,1、虚拟存储器概念,*定义:程序执行时,地址空间=程序地址空间的“存储器”,*相关术语: 虚拟地址(虚地址)程序的逻辑地址; 物理地址(实地址)CPU访问时的主存地址; 虚拟地址空间程序逻辑地址构成的空间,*组成:由主存及辅存构成、按程序逻辑地址访问的存储层次,63,2、虚拟存储器的工作原理,*虚拟存储器实质:是面向程序的
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论