1、第五章第五章 存储器及存储器子系统存储器及存储器子系统5.1 存储器概述存储器概述5.2 半导体静态存储器半导体静态存储器5.3 动态动态RAM存储器存储器5.4 存储器的接口设计存储器的接口设计5.5 高速缓冲存储器高速缓冲存储器5.6 虚拟存储器虚拟存储器5.1 存储器概述存储器概述l存储器的主要技术指标有:存储器的主要技术指标有:存储容量存储容量存取速度存取速度体积和功耗体积和功耗可靠性可靠性 5.1.2存储器的分类存储器的分类 l按照存储介质,可分为半导体存储器、磁介质存储器和按照存储介质,可分为半导体存储器、磁介质存储器和光存储器。光存储器。l按照存储器与按照存储器与CPUCPU的耦
2、合程度,可分为内存和外存。的耦合程度,可分为内存和外存。l按存储器的读写功能,分为读写存储器和只读存储器。按存储器的读写功能,分为读写存储器和只读存储器。l按掉电后存储的信息可否保持,分为易失性存储器和非按掉电后存储的信息可否保持,分为易失性存储器和非易失性存储器。易失性存储器。5.1.2存储器的分类存储器的分类 l按照数据存取的随机性,分为随机存取存储器按照数据存取的随机性,分为随机存取存储器(RAMRAM)、)、顺序存取存储器(顺序存取存储器(SAMSAM)和直接存取和直接存取存储器(存储器(DAMDAM)。)。l按访问的串并行性,分为并行存取存储器和串按访问的串并行性,分为并行存取存储器
3、和串行存取存储器。行存取存储器。5.1.2存储器的分类存储器的分类 l按照存储器的寻址方式,分为按地址寻址的存储器和按按照存储器的寻址方式,分为按地址寻址的存储器和按内容寻址的存储器(内容寻址的存储器(CAMCAM,相联存储器)。相联存储器)。l按照半导体存储器的信息存储方法,分为静态存储器和按照半导体存储器的信息存储方法,分为静态存储器和动态存储器。动态存储器。l按存储器的功能,分为系统存储器、显示存储器、控制按存储器的功能,分为系统存储器、显示存储器、控制存储器等。存储器等。5.1.3内存的基本组成内存的基本组成CPUMARMDR地址译码存储体读写电路内存芯片地址线控制线数据线5.1.4存
4、储系统的层次结构存储系统的层次结构 1 1程序的局部性原理程序的局部性原理CPU高速缓存主存辅存辅助硬件辅助硬软件图图5.2 5.2 存储系统的层次结构存储系统的层次结构cache主存cc(N,T)mm(N,T)图图5.3 由由cache和主存构成的两级存储系统和主存构成的两级存储系统 2 2多级存储体系的组成多级存储体系的组成3 3多级存储系统的性能多级存储系统的性能5.2 半半 导导 体体 静静 态态 存存 储储 器器lSRAM和各种类型的和各种类型的ROM都属于半导体静态存都属于半导体静态存储器。储器。5.2.1 SRAMSRAM存储器存储器l相对于相对于DRAMDRAM而言,而言,SR
5、AMSRAM的速度快、接口简单、读写操作的速度快、接口简单、读写操作简便,但存储密度较高、存储容量较小、价格也比较高,简便,但存储密度较高、存储容量较小、价格也比较高,通常在不需要太大的存储容量的小型计算机系统(例如通常在不需要太大的存储容量的小型计算机系统(例如嵌入式系统)中作为嵌入式系统)中作为RAMRAM存储器使用,或是在多级存储存储器使用,或是在多级存储系统中被用于构成系统中被用于构成cachecache存储器。存储器。1 1SRAMSRAM的基本存储单元的基本存储单元2 2SRAMSRAM的内部结构与外部特性的内部结构与外部特性lSRAM内部一般内部一般由行列译码器、由行列译码器、存
6、储矩阵、读写存储矩阵、读写控制电路、输入控制电路、输入输出数据缓冲输出数据缓冲器等组成。器等组成。628128128K8SRAMA0A16D0D7OECSWE图图5.5 SRAM 628128的管脚信号的管脚信号 5.2.2 UV-EPROMUV-EPROM存储器存储器lUV-EPROM是用绝缘栅是用绝缘栅MOS管构成的,它利用管构成的,它利用与周围完全绝缘的栅极(称浮栅)上是否带有与周围完全绝缘的栅极(称浮栅)上是否带有电荷来决定存储的信息是电荷来决定存储的信息是1还是还是0。27C040512K8EPROMA0A18D0D7OEppVCE/PGM图图5.6 EPROM 27C040的管脚信
7、号的管脚信号 5.2.3 EEPROMEEPROM存储器存储器lEEPROM(E2PROM)是在绝缘栅是在绝缘栅MOS管的浮栅附近管的浮栅附近再增加一个栅极(控制栅)。给控制栅加一正电压,就再增加一个栅极(控制栅)。给控制栅加一正电压,就可在浮栅和漏极之间形成厚度不足可在浮栅和漏极之间形成厚度不足200A的隧道氧化物。的隧道氧化物。图图5.7 EEPROM 28256的管脚信号的管脚信号 2825632K8EEPROMA0A14D0D7OEWECE5.2.4 闪速存储器闪速存储器l特点是:特点是:(1 1)按区块()按区块(sectorsector)或页面(或页面(pagepage)组织组织
8、(2 2)可进行快速页面写入)可进行快速页面写入 (3 3)具有内部编程控制逻辑)具有内部编程控制逻辑 (4 4)具有在系统编程能力)具有在系统编程能力 (5 5)具有软件和硬件保护能力)具有软件和硬件保护能力 1 1闪存的内部组织闪存的内部组织(1 1)闪存的特点)闪存的特点(2 2)闪存的组织结构)闪存的组织结构 按页面组织按页面组织 按区块组织按区块组织 2 2闪存芯片举例闪存芯片举例(1 1)SST 28EE020SST 28EE0202M2M比特页面式闪存比特页面式闪存(2 2)SST 28SF040SST 28SF0404M4M比特区块式闪存比特区块式闪存3 3闪存的应用闪存的应用
9、1)存储监控程序、引导程序或存储监控程序、引导程序或BIOSBIOS等基本不变或等基本不变或不经常改变的程序。不经常改变的程序。2)储存在掉电时需要保持的系统配置等不常改变储存在掉电时需要保持的系统配置等不常改变的数据。的数据。3)固态盘应用。固态盘应用。5.3 动动 态态 RAM 存存 储储 器器TCS Cd(寄寄 生生 电电 容容)字字 选选 线线 XD(数数 据据 线线)图5.10 单管动态RAM的基本存储单元 5.3.2 DRAMDRAM的管脚信号与读写操作的管脚信号与读写操作1M1DRAMA0A9ODWEIDRASCAS图图5.11 DRAM的管脚信号的管脚信号地址线RASCASWE
10、DiDo行地址列地址行地址列地址写数据读数据图5.12 DRAM操作时序 lDRAMDRAM的刷新操作是周期性的,整个存储器进行的刷新操作是周期性的,整个存储器进行一次刷新操作的时间间隔称为刷新周期。刷新一次刷新操作的时间间隔称为刷新周期。刷新周期一般为周期一般为2 2msms,4ms4ms或或8 8msms。5.3.3 DRAMDRAM的刷新的刷新1 1DRAMDRAM的刷新策略的刷新策略(1 1)集中刷新)集中刷新(2 2)分散刷新(隐式刷新)分散刷新(隐式刷新)(3 3)异步刷新)异步刷新2DRAM的刷新模式的刷新模式(1 1)只用)只用 信号的刷新模式信号的刷新模式(2)在在 之前的刷
11、新模式之前的刷新模式 RASCASRAS5.3.4 DRAMDRAM控制器控制器CPUDRAM刷新地址计数器地址多路开关刷新定时器定时发生器仲裁电路地址总线刷新请求刷新地址DRAM地址(分时的行列地址)DRAM控制器读/写控制WERASCAS图图5.15 DRAM控制器的结构控制器的结构 l由于由于DRAM的存储密度较高,因而非常适于在的存储密度较高,因而非常适于在需要较大容量存储器的系统中作为随机存取存需要较大容量存储器的系统中作为随机存取存储器。储器。PC微机即采用各种类型的微机即采用各种类型的DRAM作为可作为可读写主存。读写主存。5.3.5 PCPC机的机的DRAMDRAM存储器存储器
12、1 1PCPC机随机存储器的演变机随机存储器的演变(1)FPM DRAM(Fast Page Mode DRAM)(2)EDO DRAM(Extended Data Out DRAM)(3)SDRAM(Synchronous DRAM)(4)RDRAM(Rambus DRAM)(5)DDR SDRAM(Dual Rate SDRAM)2 2DRAMDRAM内存条的接口特性内存条的接口特性(1 1)地址信号线(输入)地址信号线(输入)(2 2)数据信号线(输入)数据信号线(输入/输出)输出)(3 3)控制信号线)控制信号线(4 4)串行存在探测()串行存在探测(SPDSPD)信号线信号线(5 5
13、)电源)电源3 3内存的组织内存的组织基本内存区高端内存区扩充内存区扩展内存区384KB640KB10000HA0000H00000H图图5.16 PC机的内存组织机的内存组织 图图5.19 16位微机系统的内存组织位微机系统的内存组织 奇地址存储体(高字节)CPU8086地址锁存器偶地址存储体(低字节)地址总线数据总线D15D0D15D8D7D0A0A19A1BHEBHEA0A19A1 图图5.20 32位微机系统的内存组织位微机系统的内存组织 存储体3(最高字节)3BE存储体2(次高字节)存储体1(次低字节)存储体0(最低字节)2BE1BE0BED31D24D23D16D15D8D7D00
14、1234567FFFFFFF8FFFFFFFCFFFFFFF9FFFFFFFDFFFFFFFAFFFFFFFEFFFFFFFBFFFFFFFFl5.4.1 存储器的接口信号存储器的接口信号l存储器通过总线与存储器通过总线与CPU连接。连接。CPU与存储器之间要交换地与存储器之间要交换地址信息、数据信息和控制信址信息、数据信息和控制信息。息。5.4 存存 储储 器器 的的 接接 口口 设设 计计A0A16XTACK/WAITCSSIZEMRDMWRD0D7图图5.21 存储器的接口信号存储器的接口信号 5.4.2 存储器设计需要考虑的问题存储器设计需要考虑的问题 1 1存储器容量存储器容量2 2
15、存储空间的安排存储空间的安排3 3总线上的存储器存取信号及时序总线上的存储器存取信号及时序4 4数据总线宽度数据总线宽度l本节将介绍本节将介绍cachecache的地址变换原理以及替换算法,的地址变换原理以及替换算法,并且只考虑使用一级并且只考虑使用一级cachecache的情况。的情况。5.5 高高 速速 缓缓 冲冲 存存 储储 器器 5.5.1 cache的工作原理的工作原理 1 1为引入为引入cachecache必须解决的问题必须解决的问题2 2带有带有cachecache的存储系统的结构的存储系统的结构图图5.26 5.26 cachecache的工作原理的工作原理5.5.2 cach
16、ecache地址映射和地址变换地址映射和地址变换l地址映射方法有三种:地址映射方法有三种:1 1全相联映射全相联映射 2 2直接映射直接映射 3 3组相联映射组相联映射图图5.27 组相联映射及其变换组相联映射及其变换 5.5.3 替换算法替换算法1 1随机替换法随机替换法2 2先进先出(先进先出(FIFOFIFO)算法算法3 3最近最少使用(最近最少使用(LRULRU:Least Recently UsedLeast Recently Used)算法算法4 4最久没有使用(最久没有使用(LFULFU:Least Frequently UsedLeast Frequently Used)算法算
17、法5.5.4 cachecache的一致性问题的一致性问题更新算法更新算法l导致主存和导致主存和cachecache内容的不一致原因内容的不一致原因一是一是CPUCPU改变了改变了cachecache的内容,而主存没有改变;的内容,而主存没有改变;二是输入偷出设备或其它主控部件改变了主存,二是输入偷出设备或其它主控部件改变了主存,而而cachecache的内容没有随之改变。的内容没有随之改变。5.6 虚虚 拟拟 存存 储储 器器5.6.1虚存的概念虚存的概念 l1 1实地址与虚地址实地址与虚地址l用户编制程序时使用的地址称为虚地址或逻辑用户编制程序时使用的地址称为虚地址或逻辑地址,其对应的存储
18、空间称为虚存空间或逻辑地址,其对应的存储空间称为虚存空间或逻辑地址空间;而计算机物理内存的访问地址则称地址空间;而计算机物理内存的访问地址则称为实地址或物理地址,其对应的存储空间称为为实地址或物理地址,其对应的存储空间称为物理存储空间或主存空间。物理存储空间或主存空间。图图5.29 实地址和虚地址的对应实地址和虚地址的对应 2 2虚存的访问过程虚存的访问过程(1 1)虚拟存储系统的工作过程)虚拟存储系统的工作过程(2 2)虚存机制要解决的关键问题)虚存机制要解决的关键问题3 3cachecache与虚存的异同与虚存的异同(1 1)cachecache一主存和主存一辅存两个存储层次的相同点一主存
19、和主存一辅存两个存储层次的相同点 出发点相同 原理相同(2 2)cachecache一主存和主存一辅存两个存储层次的不同点一主存和主存一辅存两个存储层次的不同点侧重点不同 数据通路不同 透明性不同 未命中时的损失不同 5.6.2 虚存的地址变换虚存的地址变换l目前应用的地址变换方法有页式、段式和段页目前应用的地址变换方法有页式、段式和段页式虚存地址变换。式虚存地址变换。5.6.3虚存的替换算法虚存的替换算法l虚拟存储器的替换算法与虚拟存储器的替换算法与cachecache的替换算法类似,有的替换算法类似,有FIFOFIFO算法、算法、LRULRU算法、算法、LFULFU算法等。不同的是虚拟存储的算法等。不同的是虚拟存储的替换是由操作系统的软件实现的,替换是由操作系统的软件实现的,cachecache替换是用硬件替换是用硬件实现的,并且虚存缺页对系统性能的影响比实现的,并且虚存缺页对系统性能的影响比cachecache未命未命中要大得多,因为需要访问外存,并且要进行任务切换。中要大得多,因为需要访问外存,并且要进行任务切换。