计算机组成与体系结构第二章存储系统6/8/20201安徽师范大学计算机科学与技术系陈付龙2.1存储系统概述2.2主存储器2.3高速缓冲存储器2.4虚拟存储器本章习题目录2数据和程序在计算机系统中是如何存放的?存储系统是指计算机中存储程序和数据的系统,由各种存储设备、控制部件及管理信息调度的硬件和软件组成,具有存入(又称写入,简称写)和取出(又称读出,简称读)两大功能。32.1.1存储体系2.1.2存储器分类2.1.3存储器主要性能指标2.1存储系统概述41946年RCA公司启动了对计数电子管的研究,这是为早期巨大的电子管计算机配置的存储器。一个管子长达10英寸,能够保存4096比特数据,价格极其昂贵,很快就退出市场。计数电子管现代存储器的发展过程51946年RCA公司启动了对计数电子管的研究,这是为早期巨大的电子管计算机配置的存储器。一个管子长达10英寸,能够保存4096比特数据,价格极其昂贵,很快就退出市场。计数电子管现代存储器的发展过程6延迟线存储器是约翰·埃克特在20世纪40年代中期为EDVAC和UNIVACI等计算机发明的,用在早期计算机上。类似现代的许多电子存储设备,延迟线存储器是一种可以重刷新的存储器,但是与现代的随机存取存储器不同的是,延迟线存储器的工作方式为循序存取。约翰·埃克特(1919-1995)汞延迟线存储器现代存储器的发展过程71932年奥地利的古斯塔夫·陶舍克发明了磁鼓存储器,作为计算机的主干工作存储器,磁鼓存储器广泛用于20世纪五六十年代第一代电子计算机中存储数据与指令。古斯塔夫·陶舍克磁鼓存储器现代存储器的发展过程8在1950年代,IBM最早把盘式磁带用在数据存储上。1951年,UNIVAC-I第一次采用磁带机UNISERVO作外存储器。从右到左分别为:3.5软盘,DC磁带(250MB,6毫米,1020英尺),DL磁带(8毫米,367英尺),DDS4磁带(20GB无压缩,4毫米,492英尺)各式磁带机和磁带现代存储器的发展过程9美籍华人物理学家王安于1948年提出了利用磁性材料制造存储器的思想。在直径不到1毫米磁芯里可穿进一根极细的导线,只要有代表“1”或“0”的讯号电流流经导线,就能使磁芯按两种不同方向磁化,信息便以磁场形式被储存。CDC6600的磁芯存储器王安(1920-1990)王安的磁芯存储器现代存储器的发展过程101967年,美国无线电有限公司制成了领航用的机载计算机LIMAC,其逻辑部件采用双极型大规模集成电路,缓冲存储器用MOS大规模集成电路。1969年,美国自动化公司制成计算机D-200,采用了MOS场效应晶体管大规模集成电路。1971年,IBM公司开始生产IBM370系列机,它采用大规模集成电路做存储器,小规模集成电路做逻辑元件,被称为“第三代半电子计算机”。现代存储器的发展过程111956年,IBM350RAMAC计算机问世,随之一起诞生的是世界上第一款硬磁盘――IBMModel350硬磁盘,它由50块24英寸磁盘构成,总容量为5百万个字符。1980年,第一块容量上G的硬盘――IBM3380也诞生在IBM,其容量为2.52GB,体积大如冰箱,重550磅,造价约10万美元。IBMModel350硬磁盘现代存储器的发展过程1220世纪60年代,荷兰飞利浦公司的研究人员开始使用激光光束进行记录和重放信息的研究。1972年,激光视盘(LD,LaserVisionDisc)系统研制成功。20世纪80年代中期,光盘存储器设备发展速度非常快,先后推出了WORM光盘、磁光盘(MO)、相变光盘(PhaseChangeDisk,PCD)等新品种。20世纪90年代,DVD-ROM、CD-R、CD-R/W等开始出现和普及。现代存储器的发展过程132.1.1存储体系14现代计算机要求存储系统满足大容量、高速度和低成本三项基本要求。由于制造工艺限制,很难在同一种存储器中都达到这些要求,三者不可兼得,为此采用分层(级)存储体系。把各种不同存储容量、不同存取速度、不同价格的存储器,组成层次结构,并通过管理软件和辅助硬件将不同性能的存储器组合成有机的整体,称为计算机的存储层次或存储体系。寄存器Cache主存硬盘光盘、磁带速度渐快单价渐贵容量渐小2.1.1存储体系15CPUCache主存辅存1ns2ns10ns10ms现代计算机通常采用Cache—主存—辅存层次结构。在CPU和主存之间增加一个高速缓冲存储器,由纯硬件实现,提高CPU访问程序和数据的速度;主存—辅存采用虚拟存储器技术,由软件和硬件实现,扩充主存的容量。2.1.1存储体系16高速缓存(Cache)又称快存,用速度较快的存储器构成,可在2ns内可完成一次数据存取,目前容量一般为几MB左右,用来临时存放指令和数据。主存用来存放运行期间的大量程序和数据,目前容量在几GB左右,速度稍慢,可在10ns内完成一次存取。辅存(即辅助存储器,又称外存储器,简称外存)一般由磁表面存储器、光存储器构成,用来存放系统程序、大型文件、数据库等,目前容量在数百GB左右,速度为ms级。三种存储器构成三级存储器管理,各级职能和要求不同。Cache追求速度,以和CPU速度匹配;辅存追求容量大;主存介于两者之间,对容量,速度都有一定要求。2.1.2存储器分类17可分为磁介质存储器、电子介质存储器、纸介质存储器、光介质存储器等。电子介质:半导体存储器磁芯磁带软磁盘硬磁盘磁介质存储器纸介质存储器:纸带光介质:激光存储器按构成存储器的器件和存储介质分类2.1.2存储器分类18可分为随机存储器(RandomAccessMemory,RAM)、只读存储器(ReadOnlyMemory,ROM)、串行访问存储器(SequentialAccessMemory,SAM)。ROMRAM按存取方式分类可分为双极型和金属氧化物半导体型存储器。按制造工艺分类双极型半导体存储器LeffLtox基板SiO2金属氧化物半导体型存储器19可分为主存储器(简称主存,又称内存)、辅助存储器(简称外存或辅存)、缓冲存储器(简称缓存)等。按在计算机中的作用分类硬磁盘移动硬盘存储器软盘和软盘驱动器光盘和光盘驱动器U盘存储器各种辅助存储器202.1.2存储器分类21可分为易失性存储器和非易失性存储器。按信息的可保护性分类2.1.3存储器主要性能指标22从存储器读出/写入一个存储单元信息,或从存储器读出/写入一次信息(信息可能是一个字节或一个字)所需要的平均时间,称为存储器的取数时间/存数时间,记为tA。存储器存取周期数据传输率存储器存取时间存储器进行一次完整的读写操作所需要的全部时间,称为存取周期。具体地说,存取周期是连续启动两个独立的存储器操作(如两个连续的读操作)之间所需要的最小时间间隔,用tM、tC或tRC表示,一般大于tA。单位时间可写入存储器或从存储器取出的信息的最大数量,称为数据传输率或称为存储器传输带宽,单位为字节/秒(B/s,Bps)或位/秒(b/s,bps)。232.2.1主存储器基本组成2.2.2RAM2.2.3ROM2.2.4半导体存储器的容量扩展2.2.5并行存储技术2.2主存储器2.2.1主存储器基本组成241.主存储器的基本结构存储器地址寄存器地址译码与驱动电路存储阵列2k×n位读写电路存储器数据寄存器控制部件k位主存储器读写信号状态信号地址总线n位数据总线控制总线2.2.1主存储器基本组成25存储阵列存储器地址寄存器地址译码与驱动电路存储器数据寄存器读写电路主存储器的基本结构控制部件2.2.1主存储器基本组成262.主存储器的组成结构字片式结构位片式结构字片式结构是一种采用单译码方式的结构,访存地址仅进行一个方向的译码。存储阵列中的所有存储单元的相同位组成一列,一列中的所有单元电路的两根位线分别连接在一起,并使用一个读写电路。存储阵列中的每一行组成一个存储单元(字),一行中所有存储位对应的单元电路与一根字选择线(字线)连接在一起,访存地址经地址译码器译码选中与对应字线连接的一行中的所有单元电路,同时进行读/写操作。位片式结构是一种采用双译码方式的结构,访存地址需进行行和列两个方向的译码,位于选中行和列的交叉处的存储单元被唯一选中。2.2.1主存储器基本组成27地址寄存器地址译码器A0A2A1A5A4A3时序控制...R/WCSW0W1W63读写电路读写电路读写电路0,00,163,063,11,10,10,71,763,7D0D1......D7...............存储阵列位存储单元图为一个64×8的字片式结构的存储芯片,存储体中共64个字,每个字为8位,共需6根地址线,8根数据线,一次可以读写一个字节。如当地址A5A4A3A2A1A0=000001时,W1被选中,对应该字线的8位数据便可直接读出或写入。这种方式结构简单,但对n位地址,需要2n根选择线,不适合容量大的存储芯片。2.2.1主存储器基本组成28图为一个4K×1的位片式结构存储芯片示意图。如当地址A11A10…A1A0=111111000001时,X63和Y1被选中,对应第63行、第1列共同选中的那位被选中,可进行读或写操作。这种方式结构复杂,但对n位行地址、m位列地址,仅需要2n+2m根选择线,适合容量大的存储芯片。行地址寄存器行地址译码器A6A8A7A11A10A9时序控制R/WCSX0X1X63列地址译码器列地址寄存器0,00,163,063,11,10,10,631,6363,63..................存储阵列MDRR/W电路DA0A2A1A4A3A5Y0Y63Y12.2.2RAM29RAM即随机存储器,存储单元的内容可按需随意取出或存入,且存取速度与存储单元的位置无关。这种存储器在断电时将丢失其存储内容,故主要用于存储短时间使用的程序1.SRAMSRAM是由触发器(一般4个MOS管或6个MOS管)构成,不断电就可以保持其中存储的二进制信息不丢失,与DRAM相比,存储密度低、功耗高、速度快、价格高。2.2.2RAM30(1)SRAM基本存储单元X地址选择VccT6BT1T2T4T3T8T7T5Y地址选择I/OI/OA同列基本单元电路共用基本单元电路DD2.2.2RAM31(2)SRAM芯片常用的SRAM芯片有2114(1K×4)、2142(1K×4)、6116(2K×8)、6232(4K×8)、6264(8K×8)、62256(32K×8)等。符号名称功能说明A0~A9地址线接地址总线,用来对某存储单元寻址I/O1~I/O4双向数据线用于数据的写入和读出CS片选线低电平时,选中该芯片WE写允许线CS0,WE0时写入数据VCC电源线+5V111109876543218171615141312A6A9A8A7A2A1A0A3A4A5CSGNDVccI/O1I/O2I/O3I/O4WE2114芯片2.2.2RAM32(3)SRAM芯片读写时序地址片选数据读信号tRCtAtOHAtCOtOTD2114芯片读操作时序地址片选数据写信号tWCtAWtWRtDHtDWtW2114芯片写操作时序2.2.2RAM332.DRAMDRAM是由3个或1个MOS管和电容构成,必须间歇性充电(刷新)才可以保持其中存储的二进制信息不丢失,与SRAM相比,存储密度高、功耗低、速度慢、价格低。与SRAM相比,DRAM的优势在于结构简单——每一个比特的数据都只需一个电容跟3个或1个MOS管来处理,相比之下在SRAM上一个比特通常需要6个MOS管。因此,DRAM拥有非常高的密度,单位体积的容量较高因此成本较低。但相反的,DRAM也有访问速度较慢,耗电量较大的缺点。与大部分的RAM一样,由于存储在DRAM中的数据会在电源切断以后很快消失,因此它属于一种易失性存储器设备。2.2.2RAM34(1)三管DRAM的基本存储单元读选择线写选择线T3T4CgT1T2VDD预充电信号读数据线写数据线图为由T1、T2、T3三个MOS管和Cg组成的三管DRAM的基本存储单元,可以存储一个比特的数