1、7.1存储系统的基本概念存储系统的基本概念7.2半导体存储器半导体存储器7.3高速缓冲存储器(高速缓冲存储器(Cache)7.4微机的外部存储器微机的外部存储器第七章第七章 存储器系统存储器系统7.1 存储系统的基本概念存储系统的基本概念一、存储系统的层次结构一、存储系统的层次结构微机存储系统有三个基本参数:容量、速度、成本微机存储系统有三个基本参数:容量、速度、成本F容量:以字节数表示容量:以字节数表示F速度:以访问时间速度:以访问时间TA、存储周期、存储周期TM或带宽或带宽BM表示表示TA从接收读申请到读出信息到存储器输出端从接收读申请到读出信息到存储器输出端的时间的时间TM连续两次启动存
2、储器所需的最小时间间连续两次启动存储器所需的最小时间间隔隔 TM TAMMTwB 一、存储系统的层次结构一、存储系统的层次结构w数据总线宽度数据总线宽度F成本:以每位价格表示成本:以每位价格表示存储系统的基本概念存储系统的基本概念一、存储系统的层次结构一、存储系统的层次结构速度速度成本成本低低磁带磁带磁盘磁盘半导体主存储器半导体主存储器Cache寄存器寄存器存储系统的基本概念存储系统的基本概念一、存储系统的层次结构一、存储系统的层次结构存储系统的基本概念存储系统的基本概念外存平均访问时间外存平均访问时间ms级级硬盘硬盘910ms光盘光盘80120ms内存平均访问时间内存平均访问时间ns级级SR
3、AM Cache15nsSDRAM内存内存715nsEDO内存内存6080nsEPROM存储器存储器100400ns一、存储系统的层次结构一、存储系统的层次结构存储系统的基本概念存储系统的基本概念寄存器寄存器Cache主存储器主存储器辅助存储器辅助存储器(磁盘磁盘)大容量存储器大容量存储器(磁带磁带)外存储器外存储器内存储器内存储器二、存储器访问的局部性原理二、存储器访问的局部性原理存储系统的基本概念存储系统的基本概念存储器访问的局部性指处理器访问存储器时,无论取存储器访问的局部性指处理器访问存储器时,无论取指令还是取数据,所访问的存储单元都趋向于聚集在指令还是取数据,所访问的存储单元都趋向于
4、聚集在一个较小的连续单元区域中。一个较小的连续单元区域中。时间上的局部性时间上的局部性最近的将来要用到的信息很可能最近的将来要用到的信息很可能就是现在正在使用的信息。主要由循环造成。就是现在正在使用的信息。主要由循环造成。空间上的局部性空间上的局部性最近的将来要用到的信息很可能最近的将来要用到的信息很可能与现在正在使用的信息在空间上是邻近的。主要由顺与现在正在使用的信息在空间上是邻近的。主要由顺序执行和数据的聚集存放造成。序执行和数据的聚集存放造成。二、存储器访问的局部性原理二、存储器访问的局部性原理存储系统的基本概念存储系统的基本概念存储器的层次结构是依靠存储器访问的局部性实现的存储器的层次
5、结构是依靠存储器访问的局部性实现的存储器的层次结构的性能由命中率来衡量:存储器的层次结构的性能由命中率来衡量:命中率命中率对层次结构存储系统中的某一级存储器来对层次结构存储系统中的某一级存储器来说,要访问的数据正好在这一级的概率说,要访问的数据正好在这一级的概率二、存储器访问的局部性原理二、存储器访问的局部性原理存储系统的基本概念存储系统的基本概念例:两级存储系统例:两级存储系统M1访问时间访问时间TA1, 命中率命中率HM2访问时间访问时间TA2则平均访问时间则平均访问时间 TA=HTA1+(1-H)TA2规定:访问时间比规定:访问时间比访问效率访问效率12AATTr AATTe1 则则Hr
6、re)1(1 Hrre)1(1 二、存储器访问的局部性原理二、存储器访问的局部性原理存储系统的基本概念存储系统的基本概念追求追求101.01.0r=1r=2r=10r=100eH7.2 半导体存储器半导体存储器一、半导体存储器的分类一、半导体存储器的分类RAM静态静态RAM(SRAM)动态动态RAM(DRAM)ROM掩膜型掩膜型ROM可编程可编程ROM(PROM)可擦除可编程可擦除可编程ROM(EPROM)电可擦除可编程电可擦除可编程ROM(E2PROM)半导体存储器半导体存储器二、静态二、静态RAM(SRAM)FSRAM基本存储电路基本存储电路选择线选择线VccT1T2T3T4T5T6I/O
7、I/OABT1T4 双稳态触发器双稳态触发器T1、T2 放大管放大管T3、T4 负载管负载管T5、T6 控制管控制管半导体存储器半导体存储器二、静态二、静态RAM(SRAM)FSRAM基本存储电路基本存储电路选择线选择线VccT1T2T3T4T5T6I/OI/OAB1、T1截止截止A为高,为高,B为低;为低;2、T2截止截止B为高,为高,A为低;为低;3、选择线为高,、选择线为高,T5、T6导通,导通,A与与I/O相连,相连,B与与I/O相连,从而进相连,从而进行读写;行读写;4、选择线为低,信号、选择线为低,信号保持不变;保持不变;半导体存储器半导体存储器三、静态三、静态RAM(SRAM)存
8、储矩阵存储矩阵地址译码器地址译码器地址寄存器地址寄存器地址总线地址总线读写放大器读写放大器数据寄存器数据寄存器数据总线数据总线控制电路控制电路OE WE CESRAM芯片的结构芯片的结构半导体存储器半导体存储器三、静态三、静态RAM(SRAM)FSRAM的特点的特点读写速度快读写速度快所用管子数目多,单个器件容量小所用管子数目多,单个器件容量小T1、T2总有一个处于到通状态,功耗较大总有一个处于到通状态,功耗较大SRAM通常用来做通常用来做Cache常用的常用的SRAM芯片有芯片有6116、6264、62256、628128等。等。四、动态四、动态RAM(DRAM)半导体存储器半导体存储器行选
9、择信号行选择信号列选择信号列选择信号数据输入输出线数据输入输出线刷新放大器刷新放大器单管动态存储电路单管动态存储电路1、C有电荷是为有电荷是为“1”,没,没电荷时为电荷时为“0”;2、电容漏电,利用刷新电、电容漏电,利用刷新电路刷新充电;路刷新充电;3、读时行地址译码选中某、读时行地址译码选中某行,列上刷新器读行,列上刷新器读C上的上的电压,刷新放大器将电压电压,刷新放大器将电压值转换为值转换为“0”或或“1”,列,列地址译码,读取信息。地址译码,读取信息。4、写时行列选择信号为、写时行列选择信号为1,T管导通存储电路被选中,管导通存储电路被选中,刷新器给刷新器给C充电或放电。充电或放电。5、
10、逐行刷新,行为、逐行刷新,行为1,列,列为为0 。四、动态四、动态RAM(DRAM)半导体存储器半导体存储器存储矩阵存储矩阵地址总线地址总线I/O缓冲器缓冲器数据总线数据总线读写控制读写控制/动态刷新电路动态刷新电路RAS#DRAM芯片的结构芯片的结构地址锁存器地址锁存器CAS#WE#四、动态四、动态RAM(DRAM)半导体存储器半导体存储器FDRAM的特点的特点所用管子少,芯片位密度高所用管子少,芯片位密度高功耗小功耗小需要刷新需要刷新存取速度慢存取速度慢DRAM主要用来做内存主要用来做内存四、动态四、动态RAM(DRAM)半导体存储器半导体存储器FDRAM的种类的种类FPM DRAM存取时
11、间存取时间80100nsEDO DRAM存取时间存取时间5070ns SDRAM存取时间存取时间610nsSIMMSingle Inline Memory Module单列直插式内存模块单列直插式内存模块72线:线:32位数据、位数据、12位行列公用地址、位行列公用地址、RAS#、CAS#等等在在Pentium微型机中必须成对使用微型机中必须成对使用FPM/EDO四、动态四、动态RAM(DRAM)半导体存储器半导体存储器FDRAM内存条的种类内存条的种类DIMMDual Inline Memory Module双列直插式内存模块双列直插式内存模块168线:线:64位数据、位数据、14位行列公用
12、地址、位行列公用地址、RAS#、CAS#等可单数使用等可单数使用FPM/EDO/SDRAM四、动态四、动态RAM(DRAM)半导体存储器半导体存储器FDRAM内存条的种类内存条的种类五、只读存储器(五、只读存储器(ROM)半导体存储器半导体存储器一、掩膜一、掩膜ROM一旦做好就不能修改,适应于成熟的产品,大规一旦做好就不能修改,适应于成熟的产品,大规模生产,成本低。模生产,成本低。二、可擦右编程只读存储器(二、可擦右编程只读存储器(EPROM)能够重复擦写,能够重复擦写,EPROM应用非常广泛,我们也经应用非常广泛,我们也经常用到。如要重写可先用紫外线进行照射(擦写常用到。如要重写可先用紫外线
13、进行照射(擦写器),后用编程器对其进行写。器),后用编程器对其进行写。典型的典型的EPROM芯片有芯片有2716、2732、2764、27128、27256等。等。五、只读存储器(五、只读存储器(ROM)半导体存储器半导体存储器三、电可擦除可编程三、电可擦除可编程ROM(EEPROM)EPROM的优点是一块芯片可多次使用,缺点是整个的优点是一块芯片可多次使用,缺点是整个芯片虽只写错一位,也必须从电路板上取下擦掉重写,芯片虽只写错一位,也必须从电路板上取下擦掉重写,这对于实际使用是很不方便的。而这对于实际使用是很不方便的。而EEPROM是一种是一种以字节为单位可用电擦除和编程的只读存储器。它能以
14、字节为单位可用电擦除和编程的只读存储器。它能像像RAM那样随机地进行改写,又能象那样随机地进行改写,又能象ROM那样在掉那样在掉电的情况下非易失地保存数据。电的情况下非易失地保存数据。常用的常用的EEPROM有有2816、2832、2864、28128等。等。六、内存的扩展六、内存的扩展位扩展位扩展地址扩展地址扩展将多个内存芯片用位扩组装成内存模块(即内存条)将多个内存芯片用位扩组装成内存模块(即内存条)将多个内存条插到内存插槽中将多个内存条插到内存插槽中地址扩展地址扩展半导体存储器半导体存储器连接时应注意的问题:连接时应注意的问题:1、CPU带负载的能力带负载的能力一般输出线的带负载能力为一
15、般输出线的带负载能力为1个个TTL,小则直接连,小则直接连,大则要加驱动器,如大则要加驱动器,如74LS244或或74LS245等。等。六、内存的扩展六、内存的扩展半导体存储器半导体存储器连接时应注意的问题:连接时应注意的问题:2、CPU时序与存储器存取速度之间的配合时序与存储器存取速度之间的配合 CPU对对M进行读进行读/写时,写时,M必须在限定时间里完成任务。必须在限定时间里完成任务。3、存储器组织与地址分配、存储器组织与地址分配1)计算机字长不同,而存储器以字节为单位,欲存)计算机字长不同,而存储器以字节为单位,欲存取一个取一个16位或位或32位的数据就要存放连续的几个内存单位的数据就要
16、存放连续的几个内存单元。元。2)ROM和和RAM区,而区,而RAM又分为系统区和用户区,又分为系统区和用户区,内存地址分配很重要。内存地址分配很重要。六、内存的扩展六、内存的扩展半导体存储器半导体存储器典型典型CPU与存储器的连接与存储器的连接将将CPU与存储器进行连接时:与存储器进行连接时:(1)确定存储器芯片的地址范围;)确定存储器芯片的地址范围;(2)进行地址译码。)进行地址译码。1、地址译码方式、地址译码方式一般原则是:一部分是高位地址线与一般原则是:一部分是高位地址线与CPU的控制信号的控制信号组合,经译码电路产生组合,经译码电路产生I/O接口芯片的片选接口芯片的片选/CS信号,信号
17、,实现片间寻址;另一部分低位地址线直接连到实现片间寻址;另一部分低位地址线直接连到I/O接接口芯片,实现口芯片,实现I/O接口芯片的片内寻址。接口芯片的片内寻址。六、内存的扩展六、内存的扩展典型典型CPU与存储器的连接与存储器的连接1)、固定式端口地址译码、固定式端口地址译码所谓固定式译码是指接口中用到的端口地址不能更所谓固定式译码是指接口中用到的端口地址不能更改。目前接口卡中大部分都采用固定式译码。改。目前接口卡中大部分都采用固定式译码。固定式译码又分为门电路译码和译码器译码两种。固定式译码又分为门电路译码和译码器译码两种。门电路译码适应于单个端口地址的情况;门电路译码适应于单个端口地址的情
18、况;译码器译码适应于多个端口地址的情况。译码器译码适应于多个端口地址的情况。&OOOOOOA9A8A7A3A2A1A0AENIOWLS30LS20LS32门电路译码门电路译码“0”“0”“0”“1”“0”“1”“1”“0”“1”六、内存的扩展六、内存的扩展六、内存的扩展六、内存的扩展ABCG2AG2BG1OOA5A6A7A8A9AENIOWY0Y1Y2Y3Y4Y58237825982538255写写NMI屏蔽寄存器屏蔽寄存器写写DMA页面寄存器页面寄存器OO74LS138译码器译码译码器译码74LS32PC/XT系统接口板地址译码电路系统接口板地址译码电路六、内存的扩展六、内存的扩展典型典型C
19、PU与存储器的连接与存储器的连接2)、开关可选式端口地址译码、开关可选式端口地址译码如果用户要求接口卡的端口地址能适应不同的地址如果用户要求接口卡的端口地址能适应不同的地址分配场合,或为系统以后扩充留有余地,则采用开分配场合,或为系统以后扩充留有余地,则采用开关式端口地址译码。这种译码方式可以通过开关使关式端口地址译码。这种译码方式可以通过开关使接口卡的接口卡的I/O端口地址根据要求加以改变而无需改动端口地址根据要求加以改变而无需改动线路。线路。具体见参考文献具体见参考文献3六、内存的扩展六、内存的扩展片选信号的形成方法片选信号的形成方法片选信号直接接地;片选信号直接接地;线选法;线选法;全地
20、址译码法;全地址译码法;部分地址译码法。部分地址译码法。1、片选直接接地法、片选直接接地法只适应于系统中只有一个存储芯片,因为当多个时,只适应于系统中只有一个存储芯片,因为当多个时,同一个地址同时读出所有存储芯片的数据而发生冲突。同一个地址同时读出所有存储芯片的数据而发生冲突。CPUROMDBABRD2、线选法、线选法用高位地址线直接作为片选信号线,用于比较简单用高位地址线直接作为片选信号线,用于比较简单的微机系统中,存储容量不大,存储器芯片也不多的微机系统中,存储容量不大,存储器芯片也不多的声场合。会有地址重叠区,地址空间浪费很大。的声场合。会有地址重叠区,地址空间浪费很大。例:用例:用27
21、256形成形成64K的的ROM系统,系统,DB为为8位,位,AB为为20位。位。A16A15A14A0CSA14A0A14A0CSD7D0D7D0D7D01#2#A19 A18 A17 A16 A15 A14A0X X X 1 0 0 0X X X 1 0 1 1 10000H17FFFHA19 A18 A17 A16 A15 A14A0X X X 0 1 0 0X X X 0 1 1 1 08000H0FFFFH3、全译地址码法、全译地址码法所有多余的地址线都参与译码,具有对全部存储器所有多余的地址线都参与译码,具有对全部存储器空间的寻址能力,不会存在地址重叠的间题。空间的寻址能力,不会存在
22、地址重叠的间题。例:用例:用27256形成形成64K的的ROM系统,系统,DB为为8位,位,AB为为20位。位。A19A18A17A16A15A14A0CSCSD7D0D7D0D7D01#2#A19 A18 A17 A16 A15 A14A0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 00000H07FFFHA19 A18 A17 A16 A15 A14A0 0 0 0 0 1 0 0 0 0 0 0 1 1 1 08000H0FFFFHA14A0G1G2AG2BCBAY0Y1Y6Y7VccA14A04、部分地址译码法、部分地址译码法介于线选法不够,而又不需要全地址译码方式时采介
23、于线选法不够,而又不需要全地址译码方式时采用。例:系统提供用。例:系统提供AB A11A0,DB D7D0,要求用,要求用2764组成组成32K的的ROM系统。系统。A13A12A11A0CSCSD7D0D7D0D7D01#2#A11A0BAY0Y1Y2Y3A11A0A11A0D7D0A11A0D7D0E3#4#A14 没有使用没有使用4、部分地址译码法、部分地址译码法A13A12A11A0CSCSD7D0D7D0D7D01#2#A11A0BAY0Y1Y2Y3A11A0A11A0D7D0A11A0D7D0E3#4#A14 A13 A12 A11 A0 1# 0000H1FFFH 2# 4000
24、H7FFFH 3# 8000HBFFFH 4# D000HFFFFH七、内存的奇偶校验七、内存的奇偶校验处理器处理器存储器阵列存储器阵列DRAM0DRAM1DRAM2DRAM3DRAM4DRAM5DRAM6DRAM7DRAMPB奇偶检查奇偶检查器器/产生器产生器PB8位位9位位PEPE半导体存储器半导体存储器半导体存储器半导体存储器八、内存地址分析八、内存地址分析F译码器译码器74LS138半导体存储器半导体存储器八、内存地址分析八、内存地址分析例:例:2764为为8K 8的的EPROM芯片,要求其地址范围是芯片,要求其地址范围是FA000HFBFFFH,设计其连线。,设计其连线。A19 A1
25、8 A17 A16 A15 A14 A13 A12 A11A0 1 1 1 1 1 0 1 0 0 0 FA000H 1 1 1 1 1 0 1 1 1 1 FBFFFH地址分析:地址分析:所以所以A19A15都为都为“1”,而,而A14为为“0”,其余的,其余的由由“0”到到“1”。A19 A18 A17 A16 A15 A14 A13 A12 A11A0 1 1 1 1 1 0 1 0 0 0 FA000H 1 1 1 1 1 0 1 1 1 1 FBFFFH半导体存储器半导体存储器八、内存地址分析八、内存地址分析7.3 高速缓冲存储器(高速缓冲存储器(Cache)一、一、Cache的工作
26、原理的工作原理FCache的结构的结构02n-1主存主存1块块0块块M-1M个块个块每块每块K个字节个字节Cache标签标签块块0C-1C个槽个槽每个槽每个槽K个字节个字节高速缓冲存储器(高速缓冲存储器(Cache)一、一、Cache的工作原理的工作原理F地址映象地址映象直接映象直接映象每个主存块只允许放到每个主存块只允许放到Cache的特定的槽中的特定的槽中优点:简单优点:简单缺点:缺点:Cache命中率低、命中率低、 Cache空间利用率也低空间利用率也低字节号字节号槽号槽号标签标签高速缓冲存储器(高速缓冲存储器(Cache)一、一、Cache的工作原理的工作原理F地址映象地址映象全相联映
27、象全相联映象每个主存块允许放到每个主存块允许放到Cache的任何一个槽中的任何一个槽中字节号字节号标签标签优点:复杂优点:复杂优点:优点:Cache命中率高、命中率高、 Cache空间利用率也高空间利用率也高高速缓冲存储器(高速缓冲存储器(Cache)一、一、Cache的工作原理的工作原理F地址映象地址映象组相联映象组相联映象把把Cache分成若干组,每组若干个槽。分成若干组,每组若干个槽。设每组有设每组有J个槽,称为个槽,称为J路组相联路组相联每个主存块允许放在特定组内的任意一个槽中每个主存块允许放在特定组内的任意一个槽中字节号字节号组号组号标签标签高速缓冲存储器(高速缓冲存储器(Cache)一、一、Cache的工作原理的工作原理F替换算法替换算法1. 最近最少使用(最近最少使用(LRU) 需要记录使用情况的历史信息需要记录使用情况的历史信息2. 先进先出(先进先出(FIFO) 用循环移位寄存器用循环移位寄存器3. 用得最少(用得最少(LFU) 每个槽增加一个计数器每个槽增加一个计数器F写入策略写入策略通写通写回写回写高速缓冲存储器(高速缓冲存储器(Cache)三、三、Pentium的外部的外部Cache外部外部Cache称为二级称为二级CacheL2 Cache6.4 微机的外部存储器微机的外部存储器磁表面存储器磁表面存储器光盘存储器光盘存储器