WEO啦

首页 » 正文内容 » 存储器及存储系统

存储器及存储系统

时间:2023-03-20 02:18:49  热度:0°C

1、第 3 章 存储器及存储系统/2/本章学习内容 存储器的分类及层次结构 半导体存储器的工作原理以及与CPU的连接 高速缓冲存储器Cache的工作原理 虚拟存储器的工作原理/3/1 存储体系概述/二进制位(bit)是构成存储器的最小单位; 字节(8bits)是数据存储的基本单位。 单元地址是内存单元的唯一标志。 存储器具有两种基本的访问操作:读和写/一、存储器的分类-主存储器/主存储器:又称内存,为主机的一部分,用于存放系统当前正在执行的数据和程序,属于临时存储器。主要由半导体存储器构成,常采用并行方式进行读写访问。 ROM(MROM、PROM、EPROM、E2PROM 、Flash ROM):

2、具有非易失性,结构简单,成本低等优点,常用于保存关键、重要的系统程序,如BIOS; RAM(SRAM、DRAM):具有易失性,可随机读写,用于保存临时程序与数据,其中SRAM与DRAM相比具有集成度低、速度快。价格高、不需刷新等特点;常有TTL和CMOS两种不同的工艺。 Cache(一级、***):具有高速、小容量、成本高的特点,采用高速SRAM制成,具有多级结构,重点掌握哈佛结构/一、存储器的分类-辅助存储器/辅助存储器:又称外存,为外部设备,用于存放暂不用的数据和程序,属于永久存储器。主要由磁表面和激光存储器构成,常用串行或串并结合(直接存取)访问。 磁带存储器; 磁盘(软、硬)存储器; 激

3、光存储器:具有容量大、速度慢、价格低等特点; 以上存储器若与存储器管理软件结合可构成虚拟存储器/一、存储器的分类-综述/主存储器/辅助存储器/存储器/RAM/ROM/SRAM/DRAM/磁盘/光盘/软盘/硬盘/Cache/磁带/MROM PROM EPROM E2PROM/CD-ROM WORM EOD/二、主存储器的性能指标/1、存储容量: 指存储器可容纳的二进制信息量,描述存储容量的单位是字节或位。 量化单位: 1K210 1M220 1G230 1T240 存储器芯片的存储容量(1)存储单元个数每存储单元的位数 存储器芯片的存储容量(2)存储单元个数每存储单元的位数/8/兆/千兆/太/二

4、、主存储器的性能指标/2、存储速度:由以下3个方法来衡量。 TA 存取时间(Memory Access Time):指启动一次存储器操作到完成该操作所需的全部时间。存取时间愈短,其性能愈好。通常存取时间用纳秒(ns109s)为单位。 TM 存储周期(Memory Cycle Time):指存储器进行连续两次***的存储器操作所需的最小间隔时间。 通常存取周期TM大于存取时间TA ,即TM TA BW 存储器带宽:是单位时间里存储器所能存取的最大信息量,存储器带宽的计量单位通常是位/秒(bps)或字节/秒,它是衡量数据传输速率的重要技术指标。 BW=字长W/存取周期TM/二、主存储器的性能指标/3

5、、存储器的价格:用每位的价格来衡量。 设存储器容量为S,总价格为C,则位价为C/S(分/位)。 它不仅包含了存储元件的价格,还包括为该存储器操作服务的外围电路的价格。 4、可靠性:指存储器正常工作(正确存取)的性能。 5、功耗:存储器工作的耗电量。 存储容量、速度和价格的关系: 速度快的存储器往往价格较高,容量也较小。 容量、速度和价格三个指标是相互制约的/三、存储器的层次结构/1/分级原理: 根据程序执行的集中性和局部性原理而构建的分层结构。信息流动分规律为从低速、大容量层次向高速、小容量层次流动,解决速度、价格、价格这三者之间的矛盾,层次间信息块的调度由硬件和软件自动完成,其过程对用户透明

6、。 2/***存储管理系统: Cache: 采用TTL工艺的SRAM,哈佛结构; 采用MOS工艺的SRAM,指令与数据混存,其与内存之间信息块的调度(几十字节)全由Cache***硬件完成。 主存: ROM常用FROM,E2PROM等构成; RAM常用DRAM构成,RAM和ROM采用统一编码。 虚存: 采用磁盘存储器,主存+OS中的存储器管理软件联合构成,其信息块常用页、段表示,其间的信息块调度由管理软件完成/三、存储器的层次结构/由Cache***管理 形成Cache层次/由OS管理 形成虚拟存储器层次/存储器的主要性能特性比较/ms(毫秒),s(微秒),ns(毫微秒) 1s=1000ms,1

7、ms=1000 s/内存/硬盘/硬盘/优盘/优盘/3/2 主存储器/特点: 主存储器可以被CPU直接存取(访问)。 一般由半导体材质构成。 随机存取:读写任意存储单元所用时间是相同的,与单元地址无关。 与辅存相比,速度快,价格高,容量小。 主存的操作: 读存储器操作: 写存储器操作/3/2 主存储器/主存储器按其功能可分为RAM和ROM/一、随机存取存储器RAM/M A D/M A R/M D R/R/W读写 控制电路/Y1/Y2n-1/Y0/Y2n-2/MM/Bm-1/B0/An-1A0/Dm-1D0/CS WE/一、随机存取存储器RAM/1、静态随机存取存储器(SRAM/1)SRAM存储位

8、元/1” 状态:T1截止,T2导通 “0”状态: T2截止,T1导通/六管MOS静态存储器结构/2)SRAM存储器结构/地址译码方式: 单译码方式:n位地址线,经过一个地址***译码后,形成有2n根选择线/2)SRAM存储器结构/双译码方式:n位地址线分为行、列两组地址分别经两个***译码,形成行选和列选信号/2114 SRAM存储器芯片举例/1K4位/2114/A9A0/D3D0/3)SRAM存储器的特点/使用双稳态触发器表示0和1代码。 在电源不掉电的情况下,信息稳定保持(静态) 。 存取速度快,集成度低(容量小),价格高。 常用作高速缓冲存储器Cache/4)SRAM存储器的读写过程/读

9、操作: T1:CPU送出有效地址AB 存储器的MAR ; T2:CPU根据其高位地址信号形成CS,启动MAD***,选中存储单元,同时WE=0有效,启动读过程; T3:经Tw延时后,所选中的单元内容MDRDB,若数据未准备就绪,则***Tw等待,至数据稳定输出为止; T4:CS、WE及地址信号取消,同时发READY有效,通知CPU读操作完成/4)SRAM存储器的读写过程/写操作: T1: CPU送出有效地址AB 存储器的MAR ;同时CPU送出待写数据内容DB; T2: CPU根据其高位地址信号形成CS ,启动***MAD,选中存储单元,同时将DB存储器的MDR, WE=1有效,启动写过程/ T

10、3:经Tw写数时间后,将MDR内容写入所选单元,若未稳定写入,则***Tw,直至稳定写入; T4:撤销CS、WE、地址、数据等信号,发READY,通知CPU写数据完成/2、动态存储器(DRAM/4/2/1/DRAM存储位元/DRAM存储器/DRAM的刷新方式/DRAM存储器的特点/1)DRAM存储位元/1”状态:电容C上有电荷 “0”状态:电容C上无电荷 再生:读出后信息可能被破坏,需要重写。 刷新:经过一段时间后,信息可能丢失,需要重写/单管MOS动态存储器结构/2)DRAM存储器/4M4位的DRAM/DRAM的读/写过程/3)DRAM的刷新方式/刷新周期:对整个DRAM全部刷新一遍的时间,即

11、DRAM允许的最大信息保持时间。有2ms/4ms/8ms三种规格,一般为2ms。 刷新操作: 采用分行刷新,即是按行来执行内部的刷新操作。 由刷新计数器产生行地址,选择当前要刷新的行。 由读操作完成刷新,读即刷新。刷新一行所需时间即是一个存取周期Tm。 刷新方式:集中式刷新、分散式刷新和异步式刷新/集中式刷新/例:16K1位DRAM芯片中,存储电路128128的存储矩阵组成。设存储器存取周期为500ns,单元刷新间隔是2ms/在2ms单元刷新间隔时间内,集中对128行刷新一遍,所需时间128500ns=64s,其余时间则用于正常访问(R/W)操作。 在内部刷新时间(64s)内,不允许访存,这段

12、时间被称为死时间/Tm/分散式刷新/在任何一个存储周期内,分为访存和刷新两个子周期。 在访存周期内,供CPU等部件正常访问。 在刷新周期内,对DRAM的某一行刷新。 存储周期为存储器存取周期Tm的两倍,即1s 500ns2。 刷新次数增多,为2ms/1s 2000。在2ms的单元刷新间隔时间内,对DRAM刷新了2000遍/Tm/异步式刷新采取折中的办法,在2ms内分散地把各行刷新一遍。 避免了分散式刷新中不必要的多次刷新,提高了整机速度;同时又解决了集中式刷新中“死区”时间过长的问题。 刷新信号的周期为2ms/128=15/625s。让刷新电路每隔15/625s产生一个刷新信号,刷新一行/异步

13、式刷新/Tm/4)DRAM存储器的特点/利用半导体器件中MOS管极间电容上有无电荷来记忆“0”和”1”代码。 在电源不掉电的情况下,信息也会丢失,因此需要不断刷新。 存取速度慢,集成度高(容量大),价格低。 常用作内存条/3、SRAM和DRAM的对比/二、只读存储器ROM/MROM PROM EPROM E2PROM Flash ROM/几种非易失性存储器的比较/3/3 主存储器的扩展/一、背景知识存储芯片简介/存储芯片的引脚封装/二、存储器容量扩展的三种方法/内存/1、位扩展/位扩展的作用: 利用多片短字长芯片构成规定字长模块,以增加带宽BW。 扩展要点: (1)各芯片的地址线A0An-1

14、、读写控制信号WE、片选信号CS分别对应并联后引出; (2)各芯片的数据线D0Dm-1***引出,分别作为所扩展的存储器的高若干位和低若干位/1、位扩展/例1-要求:用16K8位的SRAM芯片 16K16位的SRAM存储器/16K*8 SRAM0/A0-A13/CS WE/16K*8 SRAM1/A0-A13/CS WE/D7-D0/D7-D0/CS WE A13 A0/D15 D0/2、字扩展/字扩展方法的作用: 利用片选线扩展存储器模块的字节容量。 字扩展方法的要点: (1)各芯片的数据线D0Dm-1、读写控制信号WE分别对应并联后引出; (2)各存储器芯片的地址线A0An-1分别对应并联后

15、引出; (3)各存储器芯片的片选线CS***引出后分别接CPU的高位地址经译码后的译码信号,用于扩展芯片数目/2、字扩展/例2-要求: 用16K16位的SRAM芯片 128K16位的SRAM存储器/例3-要求: 用128K16位的SRAM模块 1M16位的SRAM存储器/3、字位扩展(全扩展/全扩展方法的作用: 利用位扩展、字扩展混合使用的方式进行全扩展,组成符合要求的存储器模块。 全扩展方法的要点: 先位扩展,再字扩展/3、字位扩展(全扩展/需扩展的存储器容量为MN位 / 已有芯片的容量为LK位 (LM/KN/用N/K个SRAM芯片进行位扩展,构成满足字长要求的SRAM底层模块/ 用M/L组S

16、RAM模块进行字扩展,构成满足单元数要求的SRAM上层模块/1、根据CPU芯片提供的地址线数目,确定CPU访存的地址范围; 2、根据地址范围的容量,确定各种类型存储器芯片的数目和扩展方法; 3、分配CPU地址线。CPU地址线的低位(数量存储芯片的地址线数量)直接连接存储芯片的地址线;CPU高位地址线经***形成存储芯片的片选信号CSi; 4、连接数据线、R/W等其他信号线, CPU的M/IO信号一般可用作地址***的使能信号。 5、需要说明的是,主存的扩展及与CPU连接在做法上并不唯一,应该具体问题具体分析/三、主存储器与CPU的连接/C P U/存 储 器/R/W M/IO An+k An

17、An -1 A0 Dm-1 D0/WE CSi An -1 A0 Dm-1 D0/m根数据线/n根低位地址线/K2K***/k根高位地址线/Yi/G/主存储器与CPU的连接举例/3/4 高速存储器/解决问题:为了弥补CPU与主存速度上的差异,从存储器角度看,解决问题的有效途径有三种: 主存采用高速的芯片来缩短存储器的读出时间TM,或扩展存储器的字长; 在每个存储器周期中存取多个字(多体交叉存储); 在CPU和主存之间加入一个高速缓冲存储器(Cache),以缩短存储器的平均读出时间/3/4 高速存储器/一、多体交叉存储器 (以n=4为例,四体交叉存储/存储器特点: 存储器分体; 程序在各体中交叉

18、存储; 整个存储由n个体并行组成; 数据可***输出,也可并行I/O,故称多体并行交叉存储。 编址方式:低位作体号,高位作体内地址。 优缺点:带宽增加,但容易引起冲突/一、多体交叉存储器/特点:相联存储器是一种按内容访问的存储器,即一个字是通过它的内容特征而不是它的地址进行检索的。 适用于快速查询的场合/二、相联存储器/3/5 高速缓冲存储器Cache/在存储系统中设置小容量、高速的Cache的目的是:使从存储系统(主存+缓存Cache )中读写的平均时间尽可能地接近Cache的读出时间。 其前提是程序执行的集中性和局部性/3/5 高速缓冲存储器Cache/一、Cache的特点/位置特点:位于C

19、PU和主存之间(现代CPU已经将其集成进内),是存储系统中最接近CPU的。 性能特点:容量比主存小,约数kBMB,速度比主存快510倍,如10ns。 结构特点:其组成是由快速半导体存储元件构成(双极性RAM、SRAM)的相联存储器。 内容特点:Cache内容是主存内容某一部分的复本,可以是指令,也可以是数据,Intel常用的一级缓存分为数据缓存和指令缓存,该结构称为哈佛结构。 控制特点:Cache操作的所有管理(寻找、比较;读写、替换)均由硬件实现,工作过程透明/二、Cache的组成与空间划分/Cache的组成: Cache***(比较器和替换控制逻辑) Cache存储器(标记存储器和内容存储

20、器)。 Cache的空间和主存空间的划分: 划分:主存2t页,每页2c块,每块2b字节 Cache1页;每页2c块,每块2b字节 主存地址 Cache地址 标记:Cache中的复本块在主存中的位置即页号 块号:Cache与主存交换信息的最小单位(块) 在页中的地址/03/10/11/12/13/2-1)0/2-1)1/2-1)2/主存储器/00/01/02/标记存储器/内容存储器/Cache存储器/2-1)3/第3块/第2块/第1块/第0块/第 0 页/第 1 页/第 2-1 页/0/0/1/1/02/03/11/10/比 较 器/替换 控制 逻辑/Cache***/CPU给出地址/b/t/c

21、/1/1/1/Cache的原理图/三、Cache的基本操作过程/Cache的读出过程: CPU给出地址( t | c | b )根据块号c选中Cache的相应块读出该块标记存储器中的标记t(地址变换); 将CPU给出地址中的主标记t与读出的Cache块标记t进行比较(比较操作); 若相等代表命中,CPU则根据(块号c |块内地址b),从Cache内容存储器中读取内容(读操作); 若不等则不命中,Cache启动替换控制,CPU根据地址( t | c | b )从主存中调入该块至Cache,同时修改标记并送CPU执行/03/10/11/12/13/2-1)0/2-1)1/2-1)2/主存储器/00

22、/01/02/标记存储器/内容存储器/Cache存储器/2-1)3/第3块/第2块/第1块/第0块/第 0 页/第 1 页/第 2-1 页/0/0/1/1/02/03/11/10/比 较 器/替换 控制 逻辑/Cache***/CPU给出地址/b/CPU给出地址/t/c/1/0/2/0/1/1/三、Cache的基本操作过程/Cache的写过程: 主要考虑Cache与主存的一致性问题,其余同读过程,命中后有二种写入方法: 写回法:先修改Cache,替换时才写入内存(速度快,可靠性差,不适用于多用户系统); 直通法:修改Cache的同时修改内存(速度慢,但可靠性高。/三、Cache的基本操作过程/

23、Cache的建立与替换: Cache中的内容是随着程序的执行而逐步建立的; Cache的替换过程:当所需指令和数据不在Cache时称之为不命中,要求从主存中调入,若Cache已满,由替换算法控制完成。 *1/ 随机替换算法RAND:替换出随机确定的旧块,需设置随机函数发生器; *2/ 先进先出算法FIFO:替换出最先调入Cache的旧块,需队列结构; *3/ 近期最少使用算***RU:替换出使用次数最少的旧块,需记录使用次数/03/10/11/12/13/2-1)0/2-1)1/2-1)2/主存储器/00/01/02/标记存储器/内容存储器/Cache/2-1)3/第3块/第2块/第1块/第0块

24、/第 0 页/第 1 页/第 2-1 页/0/0/1/1/02/03/11/10/程序/CPU给出程序首地址 t-c-b :0-2-0根据c=2 访问Cache,读标记并与t=0比较? 不命中,根据t-c-b访问主存,调入0-2块到 Cache的第二块,并将该块的标记修改为0。 接下来的2b次访问均为命中,直接从Cache读 取指令,直至t-c-b 变为0-3-0,重复上述过程/02/03/10/11/四、Cache的命中率/命中率 h 指CPU访问主存数据时,命中Cache的次数,占全部访问次数的比率; 其中Nc表示Cache完成存取的次数,Nm表示主存完成存取的次数。 影响Cache命中率

25、的因素: Cache容量; 替换算法; 地址映象方式/五、主存与Cache的地址映射方式/问题:如何根据主存地址,通过映像将其变换为Cache的地址,以便执行读写。有三种地址映射方式/1/直接映象:按模(页)对应映象/地址: 对应(映射)关系:主存每页中的第i块只能对应存放在Cache的第i块上; 读写特点:每次只需比较一次标记,类似于对号入座,地址转换速度快。 优缺点:映射方式简单,易实现。但不灵活,Cache命中率低/2、全相联映象:Cache块与主存块任意对应/地址: 映射关系:主存中每页中任意一块可随意存放于Cache的任意块中(统间); 读写特点:每次读写需比较2c次标记才能确定有否

26、命中,速度慢。 优点:机制灵活,命中率高。 缺点:比较器电路难于设计和实现,因此只适合于小容量的Cache/3、组相联映像/地址: 其中:t新标记,c组地址,b块内地址不变,即组间直接映象,组内全相联映象; 映射关系:每组间主存与Cache需对应入座,组内可任意存放; 读写特点:按组地址找到Cache中的相应组,在组内进行2r次比较标记,决定是否命中。 优缺点:速度适中,命中率较高/3/6 虚拟存储器/一/虚拟存储器的基本概念 1/什么是虚拟存储器? 定义: 建立在主-辅存物理结构基础之上,由附加硬件装置及OS中的存储器管理软件组成的一种存贮体系。 特点: 将辅存看成是虚拟主存,主、辅存地址空

27、间统一映射编址,形成庞大的存储空间,用户面对的是一个足够大(辅存)的虚拟主存。 程序运行时,虚拟系统的管理软、硬件会自动地在主-辅存之间进行程序块(页、段)的调度与传递。 CPU只执行调入主存的程序/2/虚/实地址的概念/虚地址(逻辑地址)辅存(虚存)地址;用户编程时使用虚址。 实地址(物理地址)主存(内存、实存)地址;CPU访问内存时使用实址。 虚实地址的转换过程: 用户以虚址编程,并存放于辅存,程序运行时CPU以虚址访问主存查表(段、页表),在则虚/实地址转换,访问主存;不在则按虚址访问辅存,调至主存,修改表中表目,然后访问主存/3/虚存与缓存的比较/首先它们分属于二个不同的存储层次 相同

28、点: 空间划分为块,以便于管理。 信息块自动地由低速层次向高速层次调动和流动。 调度时均采用相同的替换策略,即新块淘汰最不活跃的旧块,并遵循一定的映射关系/3/虚存与缓存的比较/不同点: cache用于弥补主存CPU之间的速度差距,而虚存则用于弥补主存的容量差距。 cache的信息块为几十字节,而虚存则有页、段等划分,其大小为几百几百K字节。 cache的速度比主存快510倍,而虚存则慢1001000倍。 CPU与主存,cache间有直接访问通道,而虚存则无。 cache的信息块存取,地址变换,替换等操作均由硬件实现,而虚存则基本上由OS中的存储管理模块软件加以实现。 虚拟存储器的实现方式有三

29、种:段式、页式或段页式/二/页式虚拟存储器/页式虚存(采用页表管理的,以页为信息传送单位的虚拟存贮器) 1/页与页表 页的划分:主、虚存均划分成大小相同的若干页,512-几k字节 实存的访问地址=实地址(实页号p | 页内地址d);虚存的访问地址=虚地址(虚页号P | 页内地址D);一般来说,虚页号P实页号p 页表:记录虚、实页号对应关系的表(Page Table) 页表的格式与内容:页表以虚页号为表内相对地址;页表以实页号,装入位,修改位等为表内记录内容。 页表的单元数 = 虚页数; 记录的字长 = 实页号 + 装入位 + 修改位 + 替换控制位/二/页式虚拟存储器/2/ 页表的建立: 根据

30、程序运行情况由存储管理软件自动建立;每一程序分配一张页表,并存放于内存中的固定区域,页表的起始地址由基址寄存器指定,其过程对用户而言透明。 快表与慢表: 快表存放于cache中的页表部分复本; 慢表存放于主存中的页表。 快表的引入有利于加快查表速度/二/页式虚拟存储器/3/页式虚存的虚-实地址变换过程: 其变换由软件根据页表进行 将页表的首址基址寄存器; 基址寄存器内容+虚址中的虚页号P,形成页表索引。 由页表索引查页表。 若装入位 = 0,则访虚存后调入主存,修改表目; 若装入位 = 1,取出实页号p; 实页号p + 虚址中的页内地址D(d)形成主存实地址,访问主存/虚1页/虚3页/虚4页/

31、虚2页/辅 存/页 表(存放于内存/主 存/0000 H/1000 H/1400 H/1800 H/1C00 H/2000 H/虚1页 实6页/虚2页/虚3页 实8页/虚4页 实7页/页表首址/1/2/3/4/6/1/5/8/7/1/1/1/虚1页/虚2页 实5页/虚4页/虚3页/1/CPU给出虚地址:(虚页号P=1 页内地址D=0) 2/形成页表索引:基址寄存器(页表首址)+虚页号P 3/按索引查页表:读记录中的装入位,并判断=1? 命中-CPU则根据(记录中的实页号p+D/即p+d)访问内存; 不命中- CPU直接根据虚址(虚页号P=1 页内地址D=0) 访问辅存,调入该页内存,同时修改页表中的相应记录/基址寄存器/三/段式虚拟存储器/段式虚存(采用段表管理的,以段为信息传送单位的虚拟存贮器) 1/段与段表 段的划分:段随程序的逻辑结构,每段存放一程序功能模块(例过程,子程序)。将其作为一整体进行传送与维护,段内地址各自从0开始,每段可装入内存的任意位置。故编程时可仍按虚存空间编址。 段表:段的虚-实地址的映象(对应)关系表,存放于内

温馨提示:
1. WEO啦仅展示《存储器及存储系统》的部分公开内容,版权归原著者或相关公司所有。
2. 文档内容来源于互联网免费公开的渠道,若文档所含内容侵犯了您的版权或隐私,请通知我们立即删除。
3. 当前页面地址:https://www.weo.la/doc/52874655349eebfd.html 复制内容请保留相关链接。