存储系统课件_第1页
存储系统课件_第2页
存储系统课件_第3页
存储系统课件_第4页
存储系统课件_第5页
已阅读5页,还剩95页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第3章存储系统1、存储器概述2、随机读写存储器3、只读存储器4、高速存储器5、cache存储器6、虚拟存储器7、存储保护10/31/20221第3章存储系统1、存储器概述2、随机读写存储器3、只读存储第1节存储器概述存储器的作用存储CPU执行的指令和数据;与输入输出设备直接交换数据;在多处理器系统中,存储共享数据。存储器的单位存储元(存储位):一个二进制位;存储单元:由若干个存储元组成;(字长)存储器:由许多存储单元组成。10/31/20222第1节存储器概述存储器的作用10/22/20222存储器的分类按存储介质分半导体存储器:用半导体器件组成的存储器。磁表面存储器:用磁性材料做成的存储器。按存储方式分随机存储器:任何存储单元的内容都能被随机存取,且存取时间和存储单元的物理位置无关。顺序存储器:只能按某种顺序来存取,存取时间和存储单元的物理位置有关。按存储器的读写功能分只读存储器(ROM):存储的内容只能读出而不能写入的半导体存储器。随机读写存储器(RAM):既能读出又能写入的半导体存储器。按信息的可保存性分非永久记忆的存储器:断电后信息即消失的存储器。永久记忆性存储器:断电后仍能保存信息的存储器。10/31/20223存储器的分类10/22/20223按在计算机中的作用分类:主存储器、辅助存储器、高速缓冲存储器、控制存储器、寄存器等。存储器的分级结构名称简称用途特点高速缓冲存储器Cache高速存取指令和数据存取速度快,但存储容量小主存储器主存存放计算机运行期间的大量程序和数据存取速度较快,存储容量中外存储器外存存放系统程序和大型数据文件及数据库存储容量大,位成本低10/31/20224按在计算机中的作用分类:主存储器、辅助存储器、高速缓冲存储器主存的主要技术指标存储容量:主存所能容纳的二进制信息总量。常用容量单位:Byte、KB、MB、GB、TB存取速度存取时间(访问时间、读写时间):指启动一次存储器操作到完成该操作所经历的时间。存取周期(读写周期):指存储器进行一次完整的读/写操作所需的全部时间。可靠性:规定时间内存储器无故障读写的概率。常用平均无故障时间MTBF来衡量存储器带宽:单位时间里存储器所存取的信息量,以位/秒或字节/秒为单位。10/31/20225主存的主要技术指标10/22/20225存储介质:半导体,常用MOS管构造静态MOS存储器(SRAM)动态MOS存储器(DRAM)特点:根据地址可以访问任何存储单元且时间相同;但属易失性。1半导体静态存储器(SRAM)基本存储元工作原理写入:X、Y译码信号为高,/I/O=1、I/O=0,写0/I/O=0、I/O=1,写1读出:置X、Y为高,T5有电流读出1T6有电流读出0保持:X/Y=0SRAM特点:采用双稳态触发器来保存信息。集成度较低,功耗大。第2节随机读写存储器NMOS六管存储元电路10/31/20226存储介质:半导体,常用MOS管构造第2节随机读写存储器NM0D0X01D1X1n-1Xm-1nn+12n-1(m-1)nmn-1Dn-1I/O地址译码电路MxN矩阵电路2SRAM存储器的组成存储器体:若干存储单元的集合;地址译码器:将用二进制代码表示的地址转换成输出端的高电位,用来驱动相应的读写电路,以便选择所要访问的存储单元。10/31/202270D0X01D1X1n-1Xm-1nn+12n-1(m-1)地址译码电路(续)单译码结构(一维编址)译码线路复杂,干扰大;双译码结构(二维编址)译码线路简单驱动器:增大译码信号线驱动能力的所有存储元电路。I/O电路:存储器的数据线路,控制被选中的单元读出或写入,具有放大信息作用。片选与读/写控制电路:存储器工作的总控制信号产生电路。输出驱动电路:用于扩充时的三态驱动电路。小结:存储器对外呈现三组信号线,即地址线、数据线、读/写控制线。1维地址译码器A0A1A9字线0字线1字线10231024条X地址译码器Y地址译码器A0A1A4A5A9字线0位线0字线31位线31I/OI/OCSWE10/31/20228地址译码电路(续)1维A0A1A9字线0字线1字线102313、例2114存储器芯片结构容量:1Kx4b;引脚数:地址线:10;数据线:4;片选:1;读写:1存储器的读、写操作分时进行的,故读写可共用数据总线。10/31/202293、例2114存储器芯片结构10/22/202294存储器与CPU的连接系统连接模式最小系统:与系统总线直接连接。CPU通过系统总线控制:地址总线给出地址信号;控制总线发出相应的读/写操作信号;在数据总线上实现数据传送。较大系统:通过接口芯片与系统总线连接。大系统:设置专用存储总线。CPU存储器最小系统模式CPU存储器较大系统模式地址锁存器数据缓存器总线控制器10/31/2022104存储器与CPU的连接CPU存储器最小系统模式CPU存储器SRAM存储器容量扩展方法:位扩展法:进行位数的扩充(加大字长)例1:计算机位长为8,设计容量为8Kx8,可用的芯片为8Kx1.CPU

A0...A12 WED0...D77I/O6I/O5I/O4I/O3I/O2I/O1I/O0CSI/O10/31/202211SRAM存储器容量扩展方法:CPU7654321010字扩展法:进行字数的扩充。例2:用16Kx8的芯片组成65536x8的存储器。存储空间分配:芯片个数及地址片选逻辑确定:高位地址译码控制片选。CPU

A15A14A13...A0WED0~D7a13CS016Kx8a0WEI/OCS116Kx8WEI/OCS216Kx8WEI/OCS316Kx8WEI/O2:4译码16KX816KX816KX816KX8A15~A00000~3FFF4000~7FFF8000~BFFFC000~FFFFA15A140001011CS0=!A15*!A14CS1=!A15*A14CS2=!A15*!A14CS3=A15*A1410/31/202212字扩展法:进行字数的扩充。CPUa13CS0CS字位扩展法:字向和位向都扩充。例3:用2114(1Kx4)的芯片及译码、门电路组成4Kx8的存储器A11A10A9...A0WED7~D4D3~D0CS1Kx4WEI/OCS1Kx4WEI/OCS1Kx4WEI/OCS1Kx4WEI/O2:4译码CPUCS1Kx4WEI/OCS1Kx4WEI/OCS1Kx4WEI/OCS1Kx4WEI/O1KX41KX41KX41KX41KX41KX41KX41KX4A11A10A11~A000000~3FF01400~7FF10800~BFF11C00~FFF10/31/202213字位扩展法:字向和位向都扩充。A11CSCS存储器的读、写周期读周期读出时间:从给出有效地址到外部数据总线上稳定地出现所读出的数据信息所经历的时间。读周期时间:指存储片进行两次连续读操作时所必须间隔的时间,它总是大于或等于读出时间。10/31/202214存储器的读、写周期10/22/202214写周期。10/31/202215写周期。10/22/2022152、半导体动态存储器(DRAM)基本存储元工作原理:写入:X=1,D=0,写0D=1,写1读出:先送预充信号;X=1T5管导通,读出0;T6管导通,读出1;再生读出。信息暂存:X=0必须定时刷新。DRAM特点:利用记忆电容来保存信息;需要定时刷新;集成度高,功耗低。10/31/2022162、半导体动态存储器(DRAM)10/22/202216动态存储器芯片组成:存储体外围电路例2116结构(16Kx1)有4个32x128的存储体组成,分成行、列地址寻址。/RAS/CAS10/31/202217动态存储器芯片组成:/RAS/CAS10/22/202217DRAM存储器的读、写周期读周期10/31/202218DRAM存储器的读、写周期10/22/202218写周期。10/31/202219写周期。10/22/202219最大刷新周期:2ms、4ms、8ms刷新方法:各芯片同时,片内按行刷新一行所用时间,与读写周期相同刷新周期:2ms内集中安排所有刷新周期死区用在实时要求不高的场合(1)集中刷新R/W刷新R/W刷新2mstcDRAM刷新:10/31/202220最大刷新周期:2ms、4ms、8ms刷新方法:各芯片同时,片(2)分散刷新各刷新周期分散安排在存取周期中。R/W刷新R/W刷新tc用在低速系统中2ms例.各刷新周期分散安排在2ms内。用在大多数计算机中128行≈15.6微秒每隔15.6微秒提一次刷新请求,刷新一行;2毫秒内刷新完所有行。R/W刷新R/W刷新R/WR/WR/W15.5微秒15.5微秒15.5微秒刷新请求(DMA请求)(3)异步刷新刷新请求(DMA请求)10/31/202221(2)分散刷新各刷新周期分散安排在存取周期中。R/W刷新R/DRAM控制电路:10/31/202222DRAM控制电路:10/22/202222主存的组成设某386机(寻址能力4G)主存容量为4Mx32,所用DRAM芯片为1Mx4(1024x1024),DRAM控制器用W4006AF。分析:4个模块,每个模块4组,每组2个存储器芯片。片内地址:10位,行、列一样。W4006AF功能:可以控制两个存储体交叉访问;可以对256KB—16MB的DRAM片子进行访问;最多可控制128个DRAM片子;采用CAS在RAS之前的刷新方式10/31/202223主存的组成10/22/2022233高性能主存储器EDRAM:利用存储局部性特点,在DRAM基础上集成一个小SRAM,以提高速度。例1Mx4EDRAM芯片结构猝发式读取:局部连续数据可从SRAM读出。10/31/2022243高性能主存储器10/22/202224存储介质:半导体特点:非易失性,读方式与SRAM相似。分类:掩模只读存储器:芯片只有一种工作状态:读。一次编程只读存储器:芯片有二种工作状态:写(一次)、读。多次编程只读存储器EPROM:芯片有三种工作状态:写、光擦除、读。EEPROM:芯片有2~3种工作状态:写、电擦除、读。并行:NORFLASH串行:NANDFLASH第3节只读存储器和闪速存储器10/31/202225存储介质:半导体第3节只读存储器和闪速存储器10/22/2例4[3]CPU的地址总线16根(A15-A0,A0为低位),双向数据总线8根(D7-D0),控制总线中与主存有关的信号有MREQ(允许访存,低电平有效),R/W(高电平为读命令,低电平为写命令)。主存地址空间分配如下:0—8191为系统程序区,由只读存储芯片组成;8192-32767为用户程序区;最后(最大地址)2K地址空间为系统程序工作区。上述地址为十进制,按字节编址。现有如下存储器芯片:EPROM:8K×8位(控制端仅有CS);SRAM:16K×1位,2K×8位,4K×8位,8K×8位.请从上述芯片中选择适当芯片设计该计算机主存储器,画出主存储器逻辑框图,注意画出选片逻辑(可选用门电路及3∶8译码器74LS138)与CPU的连接,说明选哪些存储器芯片,选多少片。解:选择芯片:EPROM8K1片SRAM:8K3片2K1片10/31/202226例4[3]CPU的地址总线16根(A15-A0,A0为低位0000H~1FFFH2000H~3FFFH4000H~5FFFH6000H~7FFFHF800H~FFFFHA15A14A13A12A11000xx001xx010xx011xx111118KX8(ROM)8KX88KX88Kx82KX8Y0Y1Y2Y3Y7MREQ10/31/2022270000H~1FFFHA15A14A13A12A11例5.设CPU有16根地址线,8根数据线,并用MREQ作访存控制信号(低电平有效),用WR作读/写控制信号(高电平为读,低电平为写)。现有下列存储芯片:1K×4位RAM;4K×8位RAM;8K×8位RAM;2K×8位ROM;4K×8位ROM;8K×8位ROM及74LSl38译码器和各种门电路。要求主存的地址空间满足下述条件:最小8K地址为系统程序区,与其相邻的16K地址为用户程序区,最大4K地址空间为系统程序工作区。详细画出存储芯片的片选逻辑并指出存储芯片的种类及片数。8KROM16KSRAM36k空4KSRAM10/31/202228例5.设CPU有16根地址线,8根数据线,并用MREQ作访存8KX88KX88KX84KX8A15~A00000H~1FFFH2000H~3FFFH4000H~5FFFHF000H~FFFFHA15A14A13A12000X001X010X1111ROMRAMRAMRAM10/31/2022298KX88KX88KX84KX8A15~A0A15A141双端口存储器特点:一个存储器具有两组相互独立的读写控制线路(地址线、数据线和控制线)。逻辑结构IDT7133:2KX16SRAM第4节高速存储器10/31/2022301双端口存储器第4节高速存储器10/22/202230无冲突读写控制当两个端口的地址不相同时,在两个端口上可分开进行读写操作,且不会发生冲突。R/W:读写控制信号,高时为读,低时为写,且高8位和低8位分开控制。CE:端口片选信号,低有效。OE:输出控制信号(读控制),低有效。有冲突读写控制当两个端口同时存取存储器同一存储单元时,发生读写冲突,由判断逻辑电路作选择。BUSY:关闭端口信号,为低关闭端口,为高时根据其他控制信号操作。10/31/202231无冲突读写控制10/22/2022312多模块交叉存储器特点:存储器由若干个模块组成,对存储器的寻址采用交叉方式操作。用n套地址,采用交叉编址方式,同时访问n个存储器。交叉存取度:设存储周期为T,总线传送周期为t,则交叉存取度m=T/t。连续读取m个字的实间:t1=T+(m-1)t地址寄存器M0M1M34体交叉原理图地址寄存器地址寄存器地址寄存器M2块内地址(高)模块号译码器00000004….00010005….00030007….数据寄存器数据寄存器数据寄存器数据寄存器地址10/31/2022322多模块交叉存储器地址寄存器M0M1M34体交叉原理图地址例6[4]设存储器容量为32字,字长64位,模块数m=4,分别用顺序方式和交叉方式进行组织。存储周期T=200ns,数据总线宽度为64位,总线传送周期τ=50ns。问顺序存储器和交叉存储器的带宽各是多少?【解】读出m=4个字的信息总量是:q=64位×4=256位顺序存储器读出4个字所需的时间是:

t2=mT=4×200ns=800ns;交叉存储器读出4个字所需的时间是

t1=T+(m-1)=200ns+3×50ns=350ns顺序存储器和交叉存储器的带宽分别是:

W2=q/t2=256÷(8×10-7)=32×107[位/s];

W1=q/t1=256÷(3.5×10-7)=73×107[位/s]10/31/202233例6[4]设存储器容量为32字,字长64位,模块数m=4,分3相联存储器特点:根据内容访问存储器。用于虚拟存储和cache。组成:检索寄存器:存放检索字。屏蔽寄存器:存放屏蔽码。符合寄存器:存放按检索项内容检索存储体中与之符合的单元地址。比较线路:把检索项和从存储体中读出的所有单元内容的相应位进行比较。代码寄存器:存放存储体中读出或拟写入的代码。存储体:由高速半导体存储器构成。10/31/2022343相联存储器10/22/202234第5节Cache存储器原理:基于程序和数据访问的局部性目的:减少访存次数,加快运行速度Cache与CPU及主存的关系10/31/202235第5节Cache存储器原理:基于程序和数据访问的局部性组成:由存储体、Cache-主存地址映像和Cache替换机构组成。命中率:设一个程序执行期间,Nc表示cache完成存取的总次数,Nm表示主存完成存取的总次数,则命中率

h=Nc/(Nc+Nm)对内存的平均访问时间:

ta=htc+(1-h)tm效率为:e=tc/ta若r=tm/tc则e=1/[r+(1-r)h]页号高速缓存的基本结构替换算法Cache标记页内地址标记Cache数据直接数据去/来CPU来自CPU比较主存页号页内地址Cache地址访数据修改标记访标记块(多字)单字命中不命中Cache满10/31/202236组成:由存储体、Cache-主存地址映像和Cache替换机构1)、全相连映射方式设:主存划分2s个块,每块2w个字.Cache分为2r个行,每行大小同主存的块。主存中每个块可复制到任一行的Cache行中,块号地址存于标记。检索步骤优点:cache的利用率高。缺点:比较多,速度慢。0块1块2s-1块全相连映射Cache结构标记0行标记1行标记2r-1行块号行内字地址s位w位比较器=≠主存Cache存储器主存地址标记相连存储器主存与cache地址映射方式10/31/2022371)、全相连映射方式0块1块2s-1块全相连映射Cache结2)、直接映射方式设:主存与cache的划分方式同全相连。主存中每个块只能复制到某一固定行的Cache中,块号高位地址存于标记。检索步骤优点:比较简单,速度高。缺点:块的冲突高,利用率低。0块1块2r-1块2r块2r块2r+1-1块2s-1块直接映射Cache结构标记0行标记1行标记2r-1行行号行内字地址S-r位r位w位比较器=≠主存Cache存储器主存地址标记相连存储器Tag10/31/2022382)、直接映射方式0块1块2r-1块2r块2r块2r+1-1例7:设主存容量1MB,高缓容量16KB,行的大小为512B,采用直接映射:

(1)写出主存地址格式;(2)CACHE地址格式;

(3)行标记的容量为多大;(4)画出直接地址映像关系。行号行内地址Tag(1)主存地址191413980行号行内地址(2)CACHE地址13980(3)行标记容量32行x6位=192bCACHE行主存块00,32,64,……,201611,33,65,……,201722,34,66,……,2018……3030,62,94,……,20463131,63,95,……,2047(4)映像关系10/31/202239例7:设主存容量1MB,高缓容量16KB,行的大小为512B3)、组相联映像将Cache与主存分组,设Cache中分成2u’个组,每组2v’个行,即r=u’+v’。主存中一个组的块数与Cache中的分组数相同。主存中的各块与Cache的组号有固定的映射关系,但可自由映射到对应的Cache组中的任何一行,即组间为直接映射,组内为全相联映射。v=0,即是直接映像;u=0,则是全相联映像。主存高位地址及组内行地址存入标记。兼有全相连及直接相连的优点。0块1块2u-1块2u块2u+1块2s-1块组相联映像Cache结构标记0行标记1行标记2v-1行标记2r-1行0组主存Cache存储器主存地址r=(u+v)位Cache组地址行内地址主存高位地址0组2u-1组1组Cache组内行地址w位S-r位比较器=≠10/31/2022403)、组相联映像0块1块2u-1块2u块2u+1块2s-1块例8:一个组相连cache由64个存储行构成,每组4个存储行。主存包含4096个存储块,每块由128字组成,按字访存:

(1)写出CACHE地址位数和地址格式;(2)写出主存地址位数和地址格式;(3)页标记容量(4)画出组相连映像关系。组内块号块内地址标记(2)主存地址主存容量:4096x128=219组号行内地址(1)CACHE地址1298760Cache容量:64x128=213CACHE行(16组)主存块0组(行0,1,2,3)0,16,……,40801组(行4,5,6,7)1,17,,……,40812组(行8,9,10,11)2,18,,……,4082……14组(行56,57,58,59)14,30,,……,409415组(行60,61,62,63)15,31,,……,4095(4)映射号组内行号(3)页标记容量64X(6+2)=64X8=512b10/31/202241例8:一个组相连cache由64个存储行构成,每组4个存储行替换策略(3)先进先出算法FIFO(2)最近最少使用算法LRUCache的读/写过程读将主存地址同时送往主存和CacheCache命中Cache失败从主存读写写回法全写法同时写Cache和主存从cache读Cache行被替换时,才写入主存(1)最不经常使用算法LFU写一次法第一次写时,同时写Cache和主存10/31/202242替换策略(3)先进先出算法FIFO(2)最近最少使用算法LR定义:将主存空间与外存空间统一编址,组成逻辑地址空间,即虚拟存储器,目的是扩大主存容量。基本原理用户使用逻辑地址(虚地址)空间编程;操作系统进行程序调度、存储空间分配、地址转换等相关工作;系统以物理地址(实地址)访问主存。主、外存基本信息传送方式:页式、段式和段页式.第6节、虚拟存储器10/31/202243定义:将主存空间与外存空间统一编址,组成逻辑地址空间,即虚拟1、页式虚拟存储器基本原理:根据存储器物理结构以页为单位分配主存和虚拟存储器,称为实页(物理页)和虚页(逻辑页),实、虚页大小相等;地址组成:(物理/逻辑)页号地址(高位)+页内地址;建立页表:虚地址页号与实地址页号的对照表,由操作系统建立,存放主存。其内容按虚页号顺序排列,长度为程序的虚页数。盘号:该页在磁盘中的起始地址;装入位:该页是否调入主存判断位,为”1”表示已调入;修改位:指出虚页内容在主存中是否被修改过;替换控制位:与替换策略有关;读写保护位:指出该虚页的读写允许权限;实页号:指出虚页分配在主存中的位置:实地址页号.设置一个页表基址寄存器:存放当前运行程序的页表的起始地址。虚页号盘号(块)号装入位修改位替换控制位读写保护位实页号01…10/31/2022441、页式虚拟存储器虚页号盘号(块)号装入位修改位替换控制位读虚实地址转换过程:存储管理模块读页表起始地址到页表基址寄存器;页表基址寄存器+虚页号拼成页表索引地址;查找该页在页表中信息字;检测装入位,若为”1”,则形成实地址:读取实页号作为实地址高位地址,虚地址的页内行地址作为实地址低,CPU以此访问主存;虚页号页内地址实页号页内地址程序虚地址实地址页表起始地址页表页表地址页表索引地址页表基址寄存器来自CPU10/31/202245虚实地址转换过程:虚页号页内地址实页号页内地址程序虚地址实地若检测装入位为”0”,以中断方式把虚地址指示的一页内容从辅存调入主存,再提供给CPU访问.主存已满:执行替换算法(随机算法、先进先出、最近最少使用算法、最久没有使用算法、最优替换算法),调出淘汰的主存页,写入磁盘,再将所需页调入主存。建立快、慢页表,提高按虚地址访存速度。优点:操作简单,开销小;缺点:页的长度固定,程序的长度不一定正好是页面的整数倍,不利于程序执行与保护,零头也会浪费。10/31/202246若检测装入位为”0”,以中断方式把虚地址指示的一页内容从辅例10:在页式虚拟存储器中,若主存容量为16MB,页面容量为4KB,程序地址空间为1G,问虚页号有多少位?页表长度为多少行?页内地址有多少位?答:(1)虚页号字段位数18,页表长度218行,页内地址段位数12。10/31/202247例10:在页式虚拟存储器中,若主存容量为16MB,页面容量为2、段式虚拟存储器将程序按照逻辑结构分成若干段,各段大小可变;建立段表:段起点:当该段装入主存时,记录其在主存中的起始地址。虚地址组成:段号(高位)+段内地址(低位);虚实地址转换过程:优点:便于程序运行;缺点:存储管理复杂,存储空间利用率低。段号装入位段起址段长其他012…段号段内地址主存地址虚地址实地址段表起始地址段表段表地址段表基址寄存器+10/31/2022482、段式虚拟存储器段号装入位段起址段长其他012…段号段内地3、段页式虚拟存储器将程序按照逻辑结构分成若干段,各段再分成大小相同的页;主存按页划分,大小与虚页同,以页为单位装入;建立段表和页表。虚实地址转换过程:段号页内地址页内地址虚地址实地址段表起始地址A段表N段表基址寄存器组+段表起始地址N基号段内页号+实页号页表M多道段页式地址映像10/31/2022493、段页式虚拟存储器段号页内地址页内地址虚地址实地址段表起始目的:当多用户共享主存时,避免其它程序破坏而设的保护措施。常用方法:存储区域保护页表和段表保护:通过页表或段表规定对应在主存的地址空间;健保护:为主存的每一页配个存储键,每个程序设置个访问健,根据访问健是否与存储键符合确认是否允许访存。环保护:对正在运行的程序保护按系统程序和用户程序的重要性及影响程度进行分层,每一层叫做一个环。操作系统定好程序各页的环号,并置入页表中。将正在运行程序的开始环号送入CPU的现行环号寄存器。操作系统控制环号访问是否合法。访问方式保护:直接限制对主存的访问权限。第7节、存储保护10/31/202250目的:当多用户共享主存时,避免其它程序破坏而设的保护措施。第第3章存储系统1、存储器概述2、随机读写存储器3、只读存储器4、高速存储器5、cache存储器6、虚拟存储器7、存储保护10/31/202251第3章存储系统1、存储器概述2、随机读写存储器3、只读存储第1节存储器概述存储器的作用存储CPU执行的指令和数据;与输入输出设备直接交换数据;在多处理器系统中,存储共享数据。存储器的单位存储元(存储位):一个二进制位;存储单元:由若干个存储元组成;(字长)存储器:由许多存储单元组成。10/31/202252第1节存储器概述存储器的作用10/22/20222存储器的分类按存储介质分半导体存储器:用半导体器件组成的存储器。磁表面存储器:用磁性材料做成的存储器。按存储方式分随机存储器:任何存储单元的内容都能被随机存取,且存取时间和存储单元的物理位置无关。顺序存储器:只能按某种顺序来存取,存取时间和存储单元的物理位置有关。按存储器的读写功能分只读存储器(ROM):存储的内容只能读出而不能写入的半导体存储器。随机读写存储器(RAM):既能读出又能写入的半导体存储器。按信息的可保存性分非永久记忆的存储器:断电后信息即消失的存储器。永久记忆性存储器:断电后仍能保存信息的存储器。10/31/202253存储器的分类10/22/20223按在计算机中的作用分类:主存储器、辅助存储器、高速缓冲存储器、控制存储器、寄存器等。存储器的分级结构名称简称用途特点高速缓冲存储器Cache高速存取指令和数据存取速度快,但存储容量小主存储器主存存放计算机运行期间的大量程序和数据存取速度较快,存储容量中外存储器外存存放系统程序和大型数据文件及数据库存储容量大,位成本低10/31/202254按在计算机中的作用分类:主存储器、辅助存储器、高速缓冲存储器主存的主要技术指标存储容量:主存所能容纳的二进制信息总量。常用容量单位:Byte、KB、MB、GB、TB存取速度存取时间(访问时间、读写时间):指启动一次存储器操作到完成该操作所经历的时间。存取周期(读写周期):指存储器进行一次完整的读/写操作所需的全部时间。可靠性:规定时间内存储器无故障读写的概率。常用平均无故障时间MTBF来衡量存储器带宽:单位时间里存储器所存取的信息量,以位/秒或字节/秒为单位。10/31/202255主存的主要技术指标10/22/20225存储介质:半导体,常用MOS管构造静态MOS存储器(SRAM)动态MOS存储器(DRAM)特点:根据地址可以访问任何存储单元且时间相同;但属易失性。1半导体静态存储器(SRAM)基本存储元工作原理写入:X、Y译码信号为高,/I/O=1、I/O=0,写0/I/O=0、I/O=1,写1读出:置X、Y为高,T5有电流读出1T6有电流读出0保持:X/Y=0SRAM特点:采用双稳态触发器来保存信息。集成度较低,功耗大。第2节随机读写存储器NMOS六管存储元电路10/31/202256存储介质:半导体,常用MOS管构造第2节随机读写存储器NM0D0X01D1X1n-1Xm-1nn+12n-1(m-1)nmn-1Dn-1I/O地址译码电路MxN矩阵电路2SRAM存储器的组成存储器体:若干存储单元的集合;地址译码器:将用二进制代码表示的地址转换成输出端的高电位,用来驱动相应的读写电路,以便选择所要访问的存储单元。10/31/2022570D0X01D1X1n-1Xm-1nn+12n-1(m-1)地址译码电路(续)单译码结构(一维编址)译码线路复杂,干扰大;双译码结构(二维编址)译码线路简单驱动器:增大译码信号线驱动能力的所有存储元电路。I/O电路:存储器的数据线路,控制被选中的单元读出或写入,具有放大信息作用。片选与读/写控制电路:存储器工作的总控制信号产生电路。输出驱动电路:用于扩充时的三态驱动电路。小结:存储器对外呈现三组信号线,即地址线、数据线、读/写控制线。1维地址译码器A0A1A9字线0字线1字线10231024条X地址译码器Y地址译码器A0A1A4A5A9字线0位线0字线31位线31I/OI/OCSWE10/31/202258地址译码电路(续)1维A0A1A9字线0字线1字线102313、例2114存储器芯片结构容量:1Kx4b;引脚数:地址线:10;数据线:4;片选:1;读写:1存储器的读、写操作分时进行的,故读写可共用数据总线。10/31/2022593、例2114存储器芯片结构10/22/202294存储器与CPU的连接系统连接模式最小系统:与系统总线直接连接。CPU通过系统总线控制:地址总线给出地址信号;控制总线发出相应的读/写操作信号;在数据总线上实现数据传送。较大系统:通过接口芯片与系统总线连接。大系统:设置专用存储总线。CPU存储器最小系统模式CPU存储器较大系统模式地址锁存器数据缓存器总线控制器10/31/2022604存储器与CPU的连接CPU存储器最小系统模式CPU存储器SRAM存储器容量扩展方法:位扩展法:进行位数的扩充(加大字长)例1:计算机位长为8,设计容量为8Kx8,可用的芯片为8Kx1.CPU

A0...A12 WED0...D77I/O6I/O5I/O4I/O3I/O2I/O1I/O0CSI/O10/31/202261SRAM存储器容量扩展方法:CPU7654321010字扩展法:进行字数的扩充。例2:用16Kx8的芯片组成65536x8的存储器。存储空间分配:芯片个数及地址片选逻辑确定:高位地址译码控制片选。CPU

A15A14A13...A0WED0~D7a13CS016Kx8a0WEI/OCS116Kx8WEI/OCS216Kx8WEI/OCS316Kx8WEI/O2:4译码16KX816KX816KX816KX8A15~A00000~3FFF4000~7FFF8000~BFFFC000~FFFFA15A140001011CS0=!A15*!A14CS1=!A15*A14CS2=!A15*!A14CS3=A15*A1410/31/202262字扩展法:进行字数的扩充。CPUa13CS0CS字位扩展法:字向和位向都扩充。例3:用2114(1Kx4)的芯片及译码、门电路组成4Kx8的存储器A11A10A9...A0WED7~D4D3~D0CS1Kx4WEI/OCS1Kx4WEI/OCS1Kx4WEI/OCS1Kx4WEI/O2:4译码CPUCS1Kx4WEI/OCS1Kx4WEI/OCS1Kx4WEI/OCS1Kx4WEI/O1KX41KX41KX41KX41KX41KX41KX41KX4A11A10A11~A000000~3FF01400~7FF10800~BFF11C00~FFF10/31/202263字位扩展法:字向和位向都扩充。A11CSCS存储器的读、写周期读周期读出时间:从给出有效地址到外部数据总线上稳定地出现所读出的数据信息所经历的时间。读周期时间:指存储片进行两次连续读操作时所必须间隔的时间,它总是大于或等于读出时间。10/31/202264存储器的读、写周期10/22/202214写周期。10/31/202265写周期。10/22/2022152、半导体动态存储器(DRAM)基本存储元工作原理:写入:X=1,D=0,写0D=1,写1读出:先送预充信号;X=1T5管导通,读出0;T6管导通,读出1;再生读出。信息暂存:X=0必须定时刷新。DRAM特点:利用记忆电容来保存信息;需要定时刷新;集成度高,功耗低。10/31/2022662、半导体动态存储器(DRAM)10/22/202216动态存储器芯片组成:存储体外围电路例2116结构(16Kx1)有4个32x128的存储体组成,分成行、列地址寻址。/RAS/CAS10/31/202267动态存储器芯片组成:/RAS/CAS10/22/202217DRAM存储器的读、写周期读周期10/31/202268DRAM存储器的读、写周期10/22/202218写周期。10/31/202269写周期。10/22/202219最大刷新周期:2ms、4ms、8ms刷新方法:各芯片同时,片内按行刷新一行所用时间,与读写周期相同刷新周期:2ms内集中安排所有刷新周期死区用在实时要求不高的场合(1)集中刷新R/W刷新R/W刷新2mstcDRAM刷新:10/31/202270最大刷新周期:2ms、4ms、8ms刷新方法:各芯片同时,片(2)分散刷新各刷新周期分散安排在存取周期中。R/W刷新R/W刷新tc用在低速系统中2ms例.各刷新周期分散安排在2ms内。用在大多数计算机中128行≈15.6微秒每隔15.6微秒提一次刷新请求,刷新一行;2毫秒内刷新完所有行。R/W刷新R/W刷新R/WR/WR/W15.5微秒15.5微秒15.5微秒刷新请求(DMA请求)(3)异步刷新刷新请求(DMA请求)10/31/202271(2)分散刷新各刷新周期分散安排在存取周期中。R/W刷新R/DRAM控制电路:10/31/202272DRAM控制电路:10/22/202222主存的组成设某386机(寻址能力4G)主存容量为4Mx32,所用DRAM芯片为1Mx4(1024x1024),DRAM控制器用W4006AF。分析:4个模块,每个模块4组,每组2个存储器芯片。片内地址:10位,行、列一样。W4006AF功能:可以控制两个存储体交叉访问;可以对256KB—16MB的DRAM片子进行访问;最多可控制128个DRAM片子;采用CAS在RAS之前的刷新方式10/31/202273主存的组成10/22/2022233高性能主存储器EDRAM:利用存储局部性特点,在DRAM基础上集成一个小SRAM,以提高速度。例1Mx4EDRAM芯片结构猝发式读取:局部连续数据可从SRAM读出。10/31/2022743高性能主存储器10/22/202224存储介质:半导体特点:非易失性,读方式与SRAM相似。分类:掩模只读存储器:芯片只有一种工作状态:读。一次编程只读存储器:芯片有二种工作状态:写(一次)、读。多次编程只读存储器EPROM:芯片有三种工作状态:写、光擦除、读。EEPROM:芯片有2~3种工作状态:写、电擦除、读。并行:NORFLASH串行:NANDFLASH第3节只读存储器和闪速存储器10/31/202275存储介质:半导体第3节只读存储器和闪速存储器10/22/2例4[3]CPU的地址总线16根(A15-A0,A0为低位),双向数据总线8根(D7-D0),控制总线中与主存有关的信号有MREQ(允许访存,低电平有效),R/W(高电平为读命令,低电平为写命令)。主存地址空间分配如下:0—8191为系统程序区,由只读存储芯片组成;8192-32767为用户程序区;最后(最大地址)2K地址空间为系统程序工作区。上述地址为十进制,按字节编址。现有如下存储器芯片:EPROM:8K×8位(控制端仅有CS);SRAM:16K×1位,2K×8位,4K×8位,8K×8位.请从上述芯片中选择适当芯片设计该计算机主存储器,画出主存储器逻辑框图,注意画出选片逻辑(可选用门电路及3∶8译码器74LS138)与CPU的连接,说明选哪些存储器芯片,选多少片。解:选择芯片:EPROM8K1片SRAM:8K3片2K1片10/31/202276例4[3]CPU的地址总线16根(A15-A0,A0为低位0000H~1FFFH2000H~3FFFH4000H~5FFFH6000H~7FFFHF800H~FFFFHA15A14A13A12A11000xx001xx010xx011xx111118KX8(ROM)8KX88KX88Kx82KX8Y0Y1Y2Y3Y7MREQ10/31/2022770000H~1FFFHA15A14A13A12A11例5.设CPU有16根地址线,8根数据线,并用MREQ作访存控制信号(低电平有效),用WR作读/写控制信号(高电平为读,低电平为写)。现有下列存储芯片:1K×4位RAM;4K×8位RAM;8K×8位RAM;2K×8位ROM;4K×8位ROM;8K×8位ROM及74LSl38译码器和各种门电路。要求主存的地址空间满足下述条件:最小8K地址为系统程序区,与其相邻的16K地址为用户程序区,最大4K地址空间为系统程序工作区。详细画出存储芯片的片选逻辑并指出存储芯片的种类及片数。8KROM16KSRAM36k空4KSRAM10/31/202278例5.设CPU有16根地址线,8根数据线,并用MREQ作访存8KX88KX88KX84KX8A15~A00000H~1FFFH2000H~3FFFH4000H~5FFFHF000H~FFFFHA15A14A13A12000X001X010X1111ROMRAMRAMRAM10/31/2022798KX88KX88KX84KX8A15~A0A15A141双端口存储器特点:一个存储器具有两组相互独立的读写控制线路(地址线、数据线和控制线)。逻辑结构IDT7133:2KX16SRAM第4节高速存储器10/31/2022801双端口存储器第4节高速存储器10/22/202230无冲突读写控制当两个端口的地址不相同时,在两个端口上可分开进行读写操作,且不会发生冲突。R/W:读写控制信号,高时为读,低时为写,且高8位和低8位分开控制。CE:端口片选信号,低有效。OE:输出控制信号(读控制),低有效。有冲突读写控制当两个端口同时存取存储器同一存储单元时,发生读写冲突,由判断逻辑电路作选择。BUSY:关闭端口信号,为低关闭端口,为高时根据其他控制信号操作。10/31/202281无冲突读写控制10/22/2022312多模块交叉存储器特点:存储器由若干个模块组成,对存储器的寻址采用交叉方式操作。用n套地址,采用交叉编址方式,同时访问n个存储器。交叉存取度:设存储周期为T,总线传送周期为t,则交叉存取度m=T/t。连续读取m个字的实间:t1=T+(m-1)t地址寄存器M0M1M34体交叉原理图地址寄存器地址寄存器地址寄存器M2块内地址(高)模块号译码器00000004….00010005….00030007….数据寄存器数据寄存器数据寄存器数据寄存器地址10/31/2022822多模块交叉存储器地址寄存器M0M1M34体交叉原理图地址例6[4]设存储器容量为32字,字长64位,模块数m=4,分别用顺序方式和交叉方式进行组织。存储周期T=200ns,数据总线宽度为64位,总线传送周期τ=50ns。问顺序存储器和交叉存储器的带宽各是多少?【解】读出m=4个字的信息总量是:q=64位×4=256位顺序存储器读出4个字所需的时间是:

t2=mT=4×200ns=800ns;交叉存储器读出4个字所需的时间是

t1=T+(m-1)=200ns+3×50ns=350ns顺序存储器和交叉存储器的带宽分别是:

W2=q/t2=256÷(8×10-7)=32×107[位/s];

W1=q/t1=256÷(3.5×10-7)=73×107[位/s]10/31/202283例6[4]设存储器容量为32字,字长64位,模块数m=4,分3相联存储器特点:根据内容访问存储器。用于虚拟存储和cache。组成:检索寄存器:存放检索字。屏蔽寄存器:存放屏蔽码。符合寄存器:存放按检索项内容检索存储体中与之符合的单元地址。比较线路:把检索项和从存储体中读出的所有单元内容的相应位进行比较。代码寄存器:存放存储体中读出或拟写入的代码。存储体:由高速半导体存储器构成。10/31/2022843相联存储器10/22/202234第5节Cache存储器原理:基于程序和数据访问的局部性目的:减少访存次数,加快运行速度Cache与CPU及主存的关系10/31/202285第5节Cache存储器原理:基于程序和数据访问的局部性组成:由存储体、Cache-主存地址映像和Cache替换机构组成。命中率:设一个程序执行期间,Nc表示cache完成存取的总次数,Nm表示主存完成存取的总次数,则命中率

h=Nc/(Nc+Nm)对内存的平均访问时间:

ta=htc+(1-h)tm效率为:e=tc/ta若r=tm/tc则e=1/[r+(1-r)h]页号高速缓存的基本结构替换算法Cache标记页内地址标记Cache数据直接数据去/来CPU来自CPU比较主存页号页内地址Cache地址访数据修改标记访标记块(多字)单字命中不命中Cache满10/31/202286组成:由存储体、Cache-主存地址映像和Cache替换机构1)、全相连映射方式设:主存划分2s个块,每块2w个字.Cache分为2r个行,每行大小同主存的块。主存中每个块可复制到任一行的Cache行中,块号地址存于标记。检索步骤优点:cache的利用率高。缺点:比较多,速度慢。0块1块2s-1块全相连映射Cache结构标记0行标记1行标记2r-1行块号行内字地址s位w位比较器=≠主存Cache存储器主存地址标记相连存储器主存与cache地址映射方式10/31/2022871)、全相连映射方式0块1块2s-1块全相连映射Cache结2)、直接映射方式设:主存与cache的划分方式同全相连。主存中每个块只能复制到某一固定行的Cache中,块号高位地址存于标记。检索步骤优点:比较简单,速度高。缺点:块的冲突高,利用率低。0块1块2r-1块2r块2r块2r+1-1块2s-1块直接映射Cache结构标记0行标记1行标记2r-1行行号行内字地址S-r位r位w位比较器=≠主存Cache存储器主存地址标记相连存储器Tag10/31/2022882)、直接映射方式0块1块2r-1块2r块2r块2r+1-1例7:设主存容量1MB,高缓容量16KB,行的大小为512B,采用直接映射:

(1)写出主存地址格式;(2)CACHE地址格式;

(3)行标记的容量为多大;(4)画出直接地址映像关系。行号行内地址Tag(1)主存地址191413980行号行内地址(2)CACHE地址13980(3)行标记容量32行x6位=192bCACHE行主存块00,32,64,……,201611,33,65,……,201722,34,66,……,2018……3030,62,94,……,20463131,63,95,……,2047(4)映像关系10/31/202289例7:设主存容量1MB,高缓容量16KB,行的大小为512B3)、组相联映像将Cache与主存分组,设Cache中分成2u’个组,每组2v’个行,即r=u’+v’。主存中一个组的块数与Cache中的分组数相同。主存中的各块与Cache的组号有固定的映射关系,但可自由映射到对应的Cache组中的任何一行,即组间为直接映射,组内为全相联映射。v=0,即是直接映像;u=0,则是全相联映像。主存高位地址及组内行地址存入标记。兼有全相连及直接相连的优点。0块1块2u-1块2u块2u+1块2s-1块组相联映像Cache结构标记0行标记1行标记2v-1行标记2r-1行0组主存Cache存储器主存地址r=(u+v)位Cache组地址行内地址主存高位地址0组2u-1组1组Cache组内行地址w位S-r位比较器=≠10/31/2022903)、组相联映像0块1块2u-1块2u块2u+1块2s-1块例8:一个组相连cache由64个存储行构成,每组4个存储行。主存包含4096个存储块,每块由128字组成,按字访存:

(1)写出CACHE地址位数和地址格式;(2)写出主存地址位数和地址格式;(3)页标记容量(4)画出组相连映像关系。组内块号块内地址标记(2)主存地址主存容量:4096x128=219组号行内地址(1)CACHE地址1298760Cache容量:64x128=213CACHE行(16组)主存块0组(行0,1,2,3)0,16,……,40801组(行4,5,6,7)1,17,,……,40812组(行8,9,10,11)

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论