【文档说明】计算机组成原理N005课件.ppt,共(130)页,8.690 MB,由小橙橙上传
转载请保留链接:https://www.ichengzhen.cn/view-76260.html
以下为本文档部分文字说明:
2第五章存储体系存储体系概述高速存储器5.4主存储器与CPU的连接5.35.25.1存储保护5.8高速缓冲存储器Cache外存储器5.7虚拟存储器5.65.5IA32架构的存储系统举例本章小结5.9主存储器35.1存储
体系概述存储器的分类主存储器的性能指标存储器的层次结构一二三45.1存储体系概述比特b(bit)一个二进制位(bit)是构成存储器的最小单位;字节B(byte)字节(8bits)是数据存储的基本单位。内存单元地址单元
地址是内存单元的唯一标志。内存操作存储器具有两种基本的访问操作:读和写。55.1.1存储器的分类(1)按存储介质分类•半导体器件–RAM、ROM、优盘、缓存等(用于主存)•磁性材料–磁盘、磁带(用于辅存)•光介质–光盘(用作辅存)(2
)按存取方式分类•随机存取存储器–存储器中任何存储单元的内容都能被随机存取,且存取时间和存储单元的物理位置无关(主存)•顺序存取存储器–存取时间和存储单元的物理位置有关(磁盘、磁带)•相联存储器–按内容访问。65.1.
1存储器的分类(续)(3)按存储器的读写功能分类•只读存储器(ROM)•读写存储器(RAM)(4)按信息的可保存性分类•永久记忆的存储器–又称非易失性存储器,在断电后还能保存信息(辅存、ROM)•非永久记忆的存储器–又称易失性存储器,
在断电后信息丢失(主存中的RAM)(5)按在计算机系统中的作用分类•主存储器–又称内存,为主机的一部分,用于存放系统当前正在执行的数据和程序,属于临时存储器。•辅助存储器–又称外存,为外部设备,用于存
放暂不用的数据和程序,属于永久存储器。75.1.2存储器的层次结构访问速度越来越快存储容量越来越大,每位的价格越来越便宜Cache主存辅存寄存器8RAMBUS内存条DDR内存条内存9硬盘磁盘片磁头马达磁头驱动辅助电路10软盘写保护11磁带12光盘驱动器13优盘14教材补充:存储器的主
要性能特性比较存储器层次通用寄存器Cache主存储器磁盘存储器脱机存储器存储周期<10ns10~60ns40~300ns10~30ms2~20min存储容量<512B8KB~8MB32MB~4GB1GB~2TB5GB~10TB价格很高较
高高较低低材料工艺ECLSRAMDRAM磁表面磁、光等ms(毫秒),μs(微秒),ns(毫微秒)1s=1000ms,1ms=1000us,1us=1000ns如何测试现行PC机存储设备的速度?15Everest测试结果(DDR1333)1
6Everest测试结果(DDR1600)17Everest(V5.01.17)CPU性能测试185.2.1主存储器的性能指标1、存储容量:指存储器可容纳的二进制信息量,描述存储容量的单位是字节或位。量化单位:1K=2101M=2201G=2301T=240
存储器芯片的存储容量存储单元个数×每存储单元的字长/8例64K×16bit•容量为128KB兆吉太195.2.1主存储器的性能指标2、存储速度:由以下3个方法来衡量。存取时间tA(MemoryAccessTime)•指启动一次存储器操作到完成该操作所需的全部时间。存
储周期TC(MemoryCycleTime)•指存储器进行连续两次独立的存储器操作所需的最小间隔时间。•通常存取周期TC大于存取时间tA,即TC≥tA。存储器带宽•每秒传输的最大字节数•现行内存计算方法–标称频率×64/8(MB/s)205.2.2主存储器
的工作原理特点:先给地址后给数据断电数据消失随机存取:读写任意存储单元所用时间是相同的,与单元地址无关。与辅存相比,速度快,价格高,容量小。主存DBABCBCPUARDRR/WReady215.2.3(1)SRAM存
储位元X地址译码线VccT7T8T6T5T3T4T1T2Y地址译码线ABI/OI/ODD六管MOS静态存储器结构本质:利用RS触发器进行存储225.2.3(2)SRAM存储器地址译码方式:线性译码方式:n位地址线,经过一维译码后,有2n根选择线。读/写控制读/写放大器存储矩阵地址译码器.
.....n02n-1WW...B0B1Bm-1地址235.2.3(2)SRAM存储器双向译码方式:n位地址分为行、列地址分别译码行地址数据控制列地址存储单元阵列存储单元阵列存储单元阵列行地址译码行选择驱动存储矩阵列I/
O电路列选择驱动列地址译码数据驱动输入数据控制.......字..思考题变成行列存储方式,相比一维线性存储方式有什么好处?24OpenQuestion:1维地址VS2维地址假设芯片的工艺是45nm,并假设实现一个存储字节占用了10个宽度,即450nm,假设
采用1维译码,将不同地址的存储比特列在同一直线上,对于1GB的内存,试计算其排列长度,若采用二维译码,试重新计算X向和Y向的长度,并分别计算电信号从首端到尾端所需时间。99145101010450ml维:915245101020.0147mxyll维:8450
/(310)1500nst80.0147/(310)0.05nst252114SRAM存储器(静态存储器)1K×4位2114地址线10根数据线4根A9~A0D3~D0CSWE片选线写使能使用双稳态触发器表示0和1代码。电源不掉
电的情况下,信息稳定保持(静态)。存取速度快,集成度低(容量小),价格高。常用作高速缓冲存储器Cache。265.2.32、动态存储器(DRAM)(4)(3)(2)(1)DRAM存储位元DRAM存储器DRAM的刷新方式DRAM存储器的特点27(1)DRAM存储位元(P168)“1”状态
:电容C上有电荷“0”状态:电容C上无电荷再生读出后信息可能被破坏,需要重写。刷新经过一段时间后,信息可能丢失,需要重写。字线TCd数据线C单管MOS动态存储器结构28(2)DRAM存储器的组成(P170)4M×4位的DRAM列地址缓冲器存
储阵列2048×2048×4读出放大器和I/O门列地址译码器数据输出缓冲器数据输入缓冲器行地址缓冲器刷新计数器定时和控制行地址译码器MUXRASOEWECASA0A10A1D0D1D2D3.........29(3)DR
AM的读/写过程时序(P170)行地址列地址行地址列地址有效数据有效数据RASCAS地址R/WDOUTDIN读周期写周期在下降沿读行地址在下降沿读列地址要求不是很高,有兴趣的同学看看30(5)DRAM存储器的刷新(P173)刷新的必要性DRAM存储位元是基于电容器上的电
荷量存储,这个电荷量随着时间和温度而减少,因此必须定期地刷新,以保持它们原来记忆的正确信息。刷新操作有三种刷新方式:集中式刷新分散式刷新异步刷新31集中刷新-示例对具有1024个记忆单元(32×32的存储矩阵)的存储芯片进行刷新,刷新是按行进行的,要求每行在2ms以内必须刷新一次,内存的存
取周期为500ns(0.5s)。画出集中刷新示意图。每刷新一行占用一个存取周期,所以共需32个周期以完成全部记忆单元的刷新。从0~3967个周期内进行读写操作或保持,而从3968~3999这最后32个周期集中安排刷新操作。刷新间隔(2ms)读写操作刷新0139673968399939
68个周期(1984µs)32个周期(16µs)……主要缺点在集中刷新期间必须停止读写,这一段时间称为“死区”,而且存储容量越大,死区就越长。32分散刷新-示例分散刷新是指把刷新操作分散到每个存取周期内进
行,此时系统的存取周期被分为两部分,前一部分时间进行读写操作或保持,后一部分时间进行刷新操作。在一个系统存取周期内刷新存储矩阵中的一行。主要缺点这种刷新方式增加了系统的存取周期,如存储芯片的存取周期为0.5s,
则系统的存取周期应为1s。即牺牲了内存性能。没有充分利用2ms只需刷新一次,在2ms内过多刷新。刷新间隔(32µs)周期0周期1周期31读写读写读写刷新刷新刷新…33异步刷新-示例充分利用了最大刷新间隔时间
,把刷新操作平均分配到整个最大刷新间隔时间内进行。相邻两行的刷新间隔=最大刷新间隔时间÷行数对于32×32矩阵,在2ms内需要将32行刷新一遍,所以相邻两行的刷新时间间隔=2ms÷32=62.5s,即每隔62.5s安排一个刷新
周期。主要优点异步刷新方式虽然也有死区,但比集中刷新方式的死区小得多,仅为0.5s。这样可以避免使CPU连续等待过长的时间,而且减少了刷新次数,是比较实用的一种刷新方式。刷新间隔(2ms)读写读写读写刷新刷新刷新…62µs0.5µs62.5µs62.5µs34教材补充:SRAM和DR
AM的对比比较内容SRAMDRAM存储信息0和1的方式双稳态触发器极间电容上的电荷电源不掉电时信息稳定信息会丢失刷新不需要需要集成度低高容量小大价格高低速度快慢适用场合Cache主存355.2.4只读存储器ROMROM分类掩模ROM•掩模ROM实
际上是一个存储内容固定的ROM,由生产厂家提供产品。可编程ROM:用户后写入内容,有些可以多次写入。•一次性编程的PROM•多次编程–EPROM–E2PROM–FLASHROM–等等365.2.4(1)掩模ROM1、掩模ROM的阵列结构和
存储元适合批量生产(10万片以上较为划算)37教材补充:EPROM-光擦除PROM缺点:1)不能在线擦除;2)不能选择性擦除,只能整块擦除;3)擦除时间长385.2.4(3)E2PROM-电擦除可编程只读存储器E2PROM允许改写上千次,改写(先抹后写)大约需20ms,
数据可存储20年以上。395.2.4(4)闪速存储器存储元被编程,存储的数据可保持100年之久而无需外电源。既有RAM的优点,又有ROM的优点40OpenQuestionA掩模ROMB光擦除EPROM
C电擦除EEPROMDFLASHROM如果你是科学家,拟在搜索外星人的太空飞船上放置记载人类文明的芯片,不考虑容量问题,用哪种存储器较好?并说明理由425.3主存储器与CPU的连接背景知识——存储芯片简介存储器容量扩展的三种方法主存储器与CPU的连接一
二三435.3.1背景知识——存储芯片简介存储芯片的引脚封装GND(A)SRAM芯片引脚(C)ROM芯片引脚ROMVccGNDCS地址数据VppSRAMVccGNDCSWE地址数据(B)DRAM芯片引脚DRAMVccWE地址(复用)数据CASRAS445.3.2存储器容
量扩展的三种方法3、字位扩展2、字扩展1、位扩展从字长和字数方向扩展从字长方向扩展从字数(容量)方向扩展455.3.2(1)位扩展要求:用1K×4位的SRAM芯片1K×8位的SRAM存储器1K×4位SRAMD3—D0A9—A0(一)1K×4位SRAMD3—D0A9—A0(二
)高4位低4位CSWECSWE465.3.2(1)、位扩展实现写[10h]=12h读[10h]1K×4SRAM(一)1K×4SRAM(二)D3—D0D7—D4D3—D0D3—D0A9—A0A9—A0D7—D0A9—A0CSWECSCSWEWE扩展技巧:地址线、片选线、控制线公用,
数据线分开475.3.2(2)字扩展如何用2片1K×8位的SRAM芯片扩展成2K×8位的SRAM存储器1K×8位SRAMD7—D0A9—A0(一)1K×8位SRAMD7—D0A9—A0(二)前1K后1KCSCSWEWE485.3.2(2)
字扩展地址实现A10用于选择芯片(A10与cs逻辑连接)A9~A0用于选择芯片内的某一存储单元A10A9000111„0~A0~1~010~1~前1K后1K„„„495.3.2(2)字扩展1K扩展成2K容量的顺序
扩展实现1K×8SRAM(一)1K×8SRAM(二)D7—D0D7—D0A9—A0A9—A0D7—D0A9—A0A10CSCSWEWEWE顺序扩展要点低地址(需计算)、控制线、数据线分别共用,高地址(需计算)用于选择RAM片选线(CS#)511、根据CPU芯片提供的地址线数目,确定CPU访存的地
址范围,并写出相应的二进制地址码;2、根据地址范围的容量,确定各种类型存储器芯片的数目和扩展方法;3、分配CPU地址线。CPU地址线的低位(数量=存储芯片的地址线数量)直接连接存储芯片的地址线;CPU高位地址线皆参与形成存储芯片的片选信号;4、连接数
据线、R/W#等其他信号线,MREQ#信号一般可用作地址译码器的使能信号。5.3.3主存储器与CPU的连接(顺序扩展步骤)52例5.1(P182)例5-1:设CPU有16根地址线,8根数据线,并用MREQ#作访存控制信号(低电平有效)
,用R/W#作读/写控制信号(高电平为读,低电平为写)。现有下列存储芯片:1K*4位SRAM;4K*8位SRAM;8K*8位SRAM;2K*8位ROM;4K*8位ROM;8K*8位ROM;及3-8译码器和各种门电路。要求:主存的地址空间满足下述条件:最小8K地址为系统程序区(ROM区),
与其相邻的16K地址为用户程序区(RAM区),最大4K地址空间为系统程序区(ROM区)。请画出存储芯片的片选逻辑,存储芯片的种类、片数画出CPU与存储器的连接图。53A15A14A13A12A11A10A9A8A7A6A5A4A3A2A1A0最小8K系统区相邻16K
用户程序区最大4K系统区000000000000000000011111111111110010000000000000001111111111111111111111111111111111000000000000„„
„„„„„„01000000000000000101111111111111„„例5.1地址分析0Y1Y2Y7YA12712712712CS=YACS=YA=Y+A54CPU3:8译码器MREQA15|A13A11--A0R/WD7--D0ENY0Y1Y
2Y7CBA8K*8ROM8K*8SRAM8K*8SRAM4K*8ROMA12AOEAAAOECECEDDDDWEWE...例5.1连线实现(P183)注意ROM与RAM在WE#、数据线上的区别55例5.2(P183)例5-2:设有若干片256K×8位的SRAM芯片,问如何构成2048K×32
位的存储器?需要多少片RAM芯片?该存储器需要多少根地址线?画出该存储器与CPU连接的结构图,设CPU的接口信号有地址信号、数据信号、控制信号MREQ#和R/W#。解:采用字位扩展的方法。SRAM芯片个数:2048K/256K×32/8=32片每4片一组进行位扩展,共8组芯片进行字扩展
片选:该存储器需要21条地址线A20~A0,其中高3位用于芯片选择接到74LS138芯片的CBA,低18位接到存储器芯片地址。MREQ#:作为译码器的使能信号。56CPU3:8译码器MREQA20|A18A17--A0R/WD31--D0ENY0Y1Y2Y
7CBA256K*8共4片256K*8共4片256K*8共4片256K*8共4片ACEAAACECECEDDDDWEWE...WEWE...32323232SRAMSRAMSRAMSRAM例5.2连线图(P184)57课堂练习某机器的地址线有16位,用A15-A0表示,数据位
为8位,某型号内存颗粒为4K×8容量,用4颗该型号内存颗粒扩展成16K×8的内存系统,若要使地址能在0000H~3FFFH范围内无冲突访问到内存,用2-4译码器(输入端B1、B0为正逻辑,输出端为负逻辑)实现之,并画出内存的扩展连线图。2-4译码器__Y3_
_Y2__Y1__Y0B1B04K×84K×84K×84K×8___WE___WE___WE___WED7~D0D7~D0D7~D0D7~D0A11~A0A11~A0__CS__CS__CS__CSA11~
A0A11~A058课堂练习-讲解某机器的地址线有16位,用A15-A0表示,数据位为8位,某型号内存颗粒为4K×8容量,用4颗该型号内存颗粒扩展成16K×8的内存系统,若要使地址能在0000H~3FFFH范围内无冲突访问到内存,
用2-4译码器(输入端B1、B0为正逻辑,输出端为负逻辑)实现之,并画出内存的顺序扩展连线图。2-4译码器__Y3__Y2__Y1__Y0B1B04K×84K×84K×84K×8___WE___WE___WE___WED7~D0D7~D0D7~D0D7~D0A11~
A0A11~A0__CS__CS__CS__CSA11~A0A11~A059例5.3(P184-P186,课外自学,需要掌握)605.4高速存储器解决问题弥补CPU与主存速度上的差异。从存储器角度,解决问题的有效途径:改进工艺,主存采用更高速的技术来
内存颗粒缩短存储器的读出时间;增加存储器的字长(例如64bit的扩展到128bit);采用并行操作的多端口存储器;在CPU和主存之间加入一个高速缓冲存储器(Cache),以缩短读出时间;多体交叉
存储其它途径615.4高速存储器双端口存储器多体交叉存储器相联存储器一二三625.4.1双端口存储器(TEC-5)器DR2器RAM内存AR1PCALU_BUS#Cn#LDDR2(T2)RS1RS0BCEL#LR/W#(T2)LDAR#(T2)AR
+1(T2)LDPC#(T2)PC+1(T2)CER#LDRi(T3)RAM_BUS#IR3(RS1)IR2(RS0)IR1(WR1RD1)IR0(WR0RD0)RS_BUS#DBUSDBUSDBUSIRBUS63特点:同一个存储
器具有两组相互独立的读写控制线路,允许两个独立的CPU或控制器同时异步地访问存储单元,是一种高速工作的存储器。其最大的特点是存储数据共享。结构特点:具有左右两个端口,每一个端口都有自己的片选控制信号和输
出使能控制信号。访问冲突:当左端口和右端口的地址不相同时,在两个端口上同时进行读写操作,不会发生冲突。若左、右端口同时访问相同的存储单元,则会发生读写冲突。5.4.1双端口存储器(TEC-5)645.4.2多体交叉存储器高n-2位042n-4152n-3262n-
2372n-1低2位存储器地址n位............译码器MAR0MAR3MAR2MAR1MDR0MDR3MDR2MDR1数据总线考虑连续访问内存[00h]~[07h],比较交叉存储与顺序存储的区别。译码器译码时间很快,可
忽略不计。66补充:顺序存储与交叉存储的扩展区别假设有n个存储体,每个存储体的容量为m个存储单元顺序方式:n2logm2log每个存储体内的地址片选,存储体选择顺序存储优缺点缺点:某个模块进行存取时,其他模块不工作,存储器的带宽受到了限制优点:某一模块出现故
障时,其他模块可以照常工作,通过增添模块来扩充存储器容量比较方便高位译码器选模块,低位选块内地址67交叉方式n2logm2log每个存储体内的地址片选,存储体选择补充:顺序存储与交叉存储的扩展区别高
位选块内地址,低位译码器选模块交叉存储优缺点缺点:内存扩展拓扑事先固定,后期扩容较困难优点:连续地址分布在相邻的不同模块内,对连续字的成块传送可实现多模块流水式并行存取,大大提高存储器的带宽。68课堂练习某机器的地址线有16位,用A15-A0表示,数据位为8位,某型号内存颗粒为4K×
8容量,用4颗该型号内存颗粒扩展成16K×8的内存系统,若要使地址能在0000H~3FFFH范围内无冲突访问到内存,用2-4译码器(输入端B1、B0为正逻辑,输出端为负逻辑)实现之,并画出内存的交叉扩展连线图。2-4译码器__Y3__Y2__Y1__Y0B1B04
K×84K×84K×84K×8___WE___WE___WE___WED7~D0D7~D0D7~D0D7~D0A11~A0A11~A0__CS__CS__CS__CSA11~A0A11~A069习题某机器中,配有四
个8K×8bit的RAM芯片(编号1号到4号),CPU地址线16根,数据线8根,读写控制R/W(R/W=1为读控制,R/W=0为写控制)。每个RAM芯片有2个控制端:当/CS有效时,该片选中;当/WE=1时执行读操作,当/WE=0时执行写操作。用交叉存储方
式画出此CPU与上述RAM芯片的连接图,并简述交叉存储相比顺序存储的优劣势。70习题解答顺序存储劣势:根据程序局部性原理,对连续地址的内存访问,交叉存储时连续数据分布在不同的存储模块上,有利于流水线并行工作,相比顺序存储,可获取更高的带宽。劣势:拓扑结构
事先固定,内存扩展相比顺序存储要难。71例5.4(P191)例5.4设存储器容量为32字,字长64位,模块数m=4,分别用顺序方式和交叉方式进行组织。存储周期T=200ns,数据总线宽度为64位,总线传送周期=50ns。若连续读出4个字(首地址从10H开
始,在教材上增加该条件),问顺序存储器和交叉存储器的带宽各是多少?顺序存储器和交叉存储器连续读出m=4个字的信息总量都是:q=64b×4=256b顺序存储器和交叉存储器连续读出4个字所需的时间分别是:t2=mT=4×
200ns=800ns=8×10-7st1=200ns+50ns×(4-1)=350ns=3.5×10-7s顺序存储器和交叉存储器的带宽分别是:W2=q/t2=256b÷(8×10-7)s=320Mb/s=40MB/sW1=q/t1=256b÷(3.
5×10-7)s≈730Mb/s≈91.3MB/s(书本上的计算不认同)73教材补充:高级RAM技术FPMDRAM(快速页模式)CDRAM(带Cache的RAM)SDRAM(同步内存)一二三74问题背景:DRAM的地址复用技术只有11根地址线如何实现22位地址线的传送?整行刷新75问题背
景:DRAM读写时序行地址列地址行地址列地址有效数据有效数据RASCAS地址R/WDOUTDIN读周期写周期在下降沿读行地址在下降沿读列地址76快速页模式---FPMDRAMFPMDRAM思考题:相比传统DRAM,F
PMDRAM的优点及可实现性?根据程序局部性原理,运行的程序和访问的数据连续存储概率非常大FPM充分利用这一特点,减少地址换行次数,换取地址写入时间77计算题假设RAS信号所需时间为2T,CAS时间
也为2T,内存读写+传输周期为4T。内存芯片为2K×0.5K×8bit。分别计算普通DRAM和FPMDRAM从首地址开始连续读取100KB数据所需时间。普通内存•(2T+2T+4T)×100K=8T×100×1024=819200TFPMRAM•2T×200+6T×100K=614800T
性能提升•(819200T/614800T-1)×100%=33.2%78CDRAMCDRAM带高速缓冲存储器(cache)的动态存储器,如图所示出1M×4位CDRAM芯片的结构框图,其中SRAM为512×4位。79计算题:CDRAMVSFPMDRAM假设R
AS信号所需时间为2T,CAS时间也为2T,内存读写+传输周期为4T。内存芯片为2K×0.5K×8bit。Cache大小为0.5KB,Cache的读写+传输周期为1T,块写入周期为50T。计算CDRAM从首地址开始连续读取
100KB数据所需时间。CDRAM内存•2T×200+50T×200+(2T+1T)×100K=317600T性能提升•CDRAMVSFPMRAM–(618400T/317600T-1)×100%=94.7%
•CDRAMVS普通RAM–(819200T/317600T-1)×100%=157.9%CDRAM的优点1)利用Cache技术,在FPM基础上提高了读写性能2)在对Cache读写时,可同时进行刷新操作3)允许读(对Cache读)、写(
对RAM写)同时进行80SDRAM(P77)SDRAM同步型动态存储器。计算机系统中的CPU使用的是系统时钟,SDRAM的操作要求与系统时钟相同步,在系统时钟的控制下从CPU获得地址、数据和控制信息。换句话说,它与CPU的数据交换同步于外部的系
统时钟信号,并且以CPU/存储器总线的最高速度运行,而不需要插入等待状态。其原理和时序关系见下一页图和动画。81思考题分析SDRAM所采用的技术技术分析各模块采用CDRAM采用交叉存储图中为模4交叉存储,故猝发长度为482
5.5高速缓冲存储器CacheCache二五三四一Cache的基本原理主存与Cache的地址映射方式替换算法写策略Cache的多层次设计835.1.1(1)Cache的基本原理Cache的工作原理Cache的特点Cache的命中率123841、Cache的特点Cache是指位于CPU和主存之间
的一个高速小容量的存储器,一般由SRAM构成。Cache功能用于弥补CPU和主存之间的速度差异,提高CPU访问主存的平均速度。设置Cache的理论基础是程序访问的局部性原理。Cache的内容是主存部分内容的副本,Cache的功能均由硬件实现,对程序员是透明的。852、Cache的
工作原理Cache、主存与CPU的关系Cache的速度比主存快5-10倍。CPU主存Cache字传送块传送86CPU主存相联存储器Cache存储体硬件逻辑电路地址总线数据总线Cache的原理图(P195)什么是Cache“命中”和“不命中
”,不命中CPU如何处理?895.5.1(2)Cache的命中率等相关概念在一个程序执行期间,设Nc表示cache完成存取的总次数,Nm表示主存完成存取的总次数,h定义为命中率,则有若tc表示命中时的cache访问时间,tm表示未命中时的主存访问时间
,1-h表示未命中率,则cache/主存系统的平均访问时间ta为:设r=tm/tc表示主存慢于cache的倍率,e表示访问效率,则有/()100%ccmhNNN(1)acmththtcatet命中率平均访问时间访问效率90CPU执行一段程序时,cac
he完成存取的次数为1900次,主存完成存取的次数为100次,已知cache存取周期为50ns,主存存取周期为250ns,求cache/主存系统的效率和平均访问时间。课堂练习题h=Nc/(Nc+Nm)=1900/(1900+100)=0.95=
95%ta=h*tc+(1-h)*tm=60nse=tc/ta=83.3%915.5.2主存与Cache的地址映射方式全相联映射1直接映射2组相联映射392带着问题学习Cache的映射方式系统描述Cache的容量为8×25
6B,即可分成8行,每行256个字节数据;RAM容量为256×256B在一段代码中要循环反复访问地址为8714H开始的连续257个字节数据和9708H开始的200个字节数据(循环100次)考虑三种映射方式的工作过程932.全相联映射方式内存1块大小=cache1行大小考虑工作过程
Cache:8×256RAM:256×256948714H:257字节9708H:200字节全相联的映射方式87H88H97H87H88H97H思考题比较器一共有多少路每路的长度(位数)是多少95全相联的映射方式特
点优点:冲突概率小,Cache的利用高。缺点:比较器难实现,需要一个访问速度很快代价高的相联存储器。Cache容量增大,行数增多,比较器路数增多;主存容量大,Cache标记比较的位数增多。应用场合适用于小容量的Cache971、直接映射方式1、映射方法(一对多)
如:•i=jmodm(求模映射)–i—Cache的行号–j—RAM的行号–m:模数(Cache的总行数)•主存第j块内容拷贝到Cache的i行•一般I和m都是2N级982、基本原理利用行号选择相应行
;把行标记与CPU访问地址进行比较,相同表示命中,访问Cache;如果没有命中,访问内存,并将相应块写入Cache直接映射方式998714H:257字节9708H:200字节87H88H97H思考题比较器一共有多少路每路的长度(位数)是多少在比较之前先经过数据选择器直接映射方
式101直接映射方式点评特点优点:比较电路只需要两路进行比较,所以硬件实现相对简单,且比较的位数也比全相联要少。缺点:冲突概率高,利用率偏低应用场合适合大容量Cache102组相联映射方式1038714H:257字节9708H:2
00字节策略:每组2行,分4组;思考题2考虑每组行数多的优点和缺点要点:融入散列表的思想,把相邻的打散87H88H97H思考题1比较器一共有多少路每路的长度(位数)是多少104三、组相联映射方式前两者的组合Cache分组,组间采用直接映射方式,组内采用全相联的映射方式Cach
e分组U,组内容量V映射方法(一对多)•q=jmodu•主存第j块内容拷贝到Cache的q组中的某行地址变换•设主存地址x,看是不是在cache中,先y=xmodu,则在y组中一次查找组相联是全相联和直接
映射的折中方案105组相联映射方式点评比较器规模比较器的规模:组内行数+1比较器的位数:地址总位数-Cache单行大小的位数-组数大小的位数每组行数大小权衡每组行数最大(即只有一组),变为全相联每组行数=1,变为直接相联组内行数增大:冲突概率减小,比较路数增大1075.5.3替换算法随机
替换算法1先进先出FIFO2最近最少使用LRU3最少使用频率LFU(补充)4先进后出FILO(补充)5108补充:替换策略LFU(最不经常使用)被访问的行计数器增加1,换值小的行(不能反映近期cache的访问情况)LRU
(近期最少使用)被访问的行计数器置0,其他的计数器增加1,换值大的行,符合cache的工作原理随机替换从特定的行位置中随机地选取一行换出即可。•这种策略在硬件上容易实现,且速度也比前两种策略快。•缺点是随意换出的
数据很可能马上又要使用,从而降低命中率和cache工作效率。但这个不足随着cache容量增大而减小。随机替换策略的功效只是稍逊于前两种策略。109补充:替换策略举例分析例子设cache有1、2、3、4共4个块,a、b、c、d等为主存中
的块,访问顺序依次如下:a、b、c、d、b、b、c、c、d、d、a,下次若要再访问e块。问,采用LFU和LRU算法替换结果是不是相同?并分别给出替换掉的块。110LFU(最不经常使用)LRU(近期最少使用
)说明1块2块3块4块说明1块2块3块4块aa进入1000a进入0111bb进入1100b进入1022cc进入1110c进入2103dd进入1111d进入3210b命中1211命中4021b命中1311命中5032
c命中1321命中6103c命中1331命中7204d命中1332命中8310d命中1333命中9420a命中2333命中0531e替换a1000替换b1042111LFU(最不经常使用)LRU(近期最少使用)说明1块2块3块4块说明1块2块3块4块aa进入1000a进入0
111bb进入1100b进入1022cc进入1110c进入2103dd进入1111d进入3210b命中1211命中4021b命中1311命中5032c命中1321命中6103c命中1331命中7204d命中1332命中8
310d命中1333命中9420a命中2333命中0531e替换a1000替换b1042112LRU处于劣势的极端问题RAM4RAM3RAM2RAM1CacheFor(i=0;i<N;i++){useRAM1;useRAM2;useRAM3;useRAM4;useR
AM5;}RAM4RAM3RAM2RAM5RAM4RAM3RAM1RAM5RAM4RAM2RAM1RAM5RAM3RAM2RAM1RAM5被替换掉的内容刚好在下一次又要用到,使之不停处于替换中,性能大大下降1135.5.4、写策略(自学)三种写操作策略写回
法:换出时,对行的修改位进行判断,决定是写回还是舍掉。会出现内存和cache不一致全写法:写命中时,Cache与内存一起写(可省判断位,但是内存效率大大降低)写一次法:与写回法一致,但是第一次Cache写命中时采用全写法(两者折中)1145.5.5Cache的多层次设计
(不要求)1155.6虚拟存储器(课外自学)1165.7外存储器(以PPT补充为准)磁盘存储器光盘存储器闪存盘一二三1175.7.1磁盘存储设备-存储原理原理描述在计算机中,用于存储设备的磁性材料,是一种具有矩形磁滞回线的磁性材料.外加
的正向脉冲电流后,即使在电流消失后磁感应强度B处在+Br状态(正剩磁状态).反之,当外加负向脉冲电流时,磁感应强度B将处在-Br状态(负剩磁状态).如果规定用+Br状态表示代码"1",-Br状态表示代码"0",那么要使磁性材料记忆"1",就要加正向脉冲电流,使磁性材料正向磁化
;要使磁性材料记忆"0",则要加负向脉冲电流,使磁性材料反向磁化.1185.7.1磁盘存储设备读写过程写操作当写线圈中通过一定方向的脉冲电流时,铁芯内就产生一定方向的磁通。读操作当磁头经过载磁体的磁化元时,由于磁头铁芯是良好的导磁材料,磁化元的磁力线很容易通过磁头而形成闭合磁通
回路。不同极性的磁化元在铁芯里的方向是不同的。119磁盘结构示意图5.7.1硬盘实物图120盘片的上下两面都能记录信息,通常把磁盘片表面称为记录面。记录面上一系列同心圆称为磁道。每个盘片表面通常有几百到几千个磁道,每个磁道又分为若干个扇区,柱面是同一磁道的立体面
。5.7.1磁头、磁道、扇区、柱面1215.7.1磁盘的平均存取时间、寻道时间、等待时间寻道时间将磁头定位到指定道的时间等待时间在同一道上转到指定扇区的时间平均存取时间寻道时间+等待时间+存取数据
时间1225.7.1扇区技术变化历史技术当今技术:分区域记录技术区别由于外圈磁道比内圈磁道更长一些,但存储的信息量却相同,所以外圈磁道上明显地存在着浪费。采用分区域记录技术可以增加硬盘驱动器的容量。1235.7.1硬盘测试数据思考题如何解释测试曲线1245.7.1固态
硬盘SSD1255.7.1Intel320系列容量连续读连续写售价2011-041940GB200MB/s45MB/s89美元80GB270MB/s90MB/s159美元120GB270MB/s130MB/s209美元160GB270MB/s165MB/s289美元300
GB270MB/s205MB/s529美元600GB270MB/s220MB/s1069美元售价2012-0528439RMB859RMB1139RMB1599RMB----1265.7.1MLC、SLC与传统硬盘写入次数
读取次数MLC约1万次大于10万次SLC约10万次大于10万次传统硬盘无限制无限制SSD硬盘分为:MLC与SLC两类1275.7.1SLC与MLC原理当前主流技术MLC——单位存储密度高,成本低SLC的特点是单位容
量成本高、速度快、寿命长MLC的特点是单位容量成本低,但是写入速度较慢,寿命比SLC要短。1285.7.1SLC与MLC原理阐述SLC和MLC均是NAND闪存的存储原理级技术。SLC:单层式储存,是指一个块(块,闪存的基本存储单元)只有两种电荷值,
高低不同的电荷值表明0或者1。MLC:多层式储存(MultiLeveledCell)是那种充分利用Block的技术,它采用较高的电压驱动,通过不同级别的电压在一个块中记录两组位信息(00、01、11、10),这样就可以
将原本SLC的记录密度理论提升一倍。129各类硬盘比较传统硬盘35秒SSD硬盘23秒双SSDRAID018秒系统启动进入桌面的时间对比RAID0为什么能提速?130RAID磁盘阵列5.7.2RAID1315.7.2(1)RAID0特点将数据分块,分存在各个硬盘上,
没有纠错能力。RAID0使得数据传输时,各个硬盘能同时参与传输,通过扩展数据宽度,提高传输速度。RAID0的安全性最低,没有数据纠错能力,但具有最高的传输速度。1325.7.2(2)RAID1特点将同一个数据存到不同的盘上,是镜像磁盘阵列,即让两个盘(或多个盘)存储相同的内容,任何一个盘数据出
问题均可由镜像盘恢复。RAID1的安全性最高,但牺牲了磁盘传输速度,甚至比单个磁盘的传输速度还要低。1335.7.2RAID10(P213)23RAID1特点至少需要4个磁盘,结合RAID0和RAID1的功能,让其中一部分磁盘组成RAID0,另外部分组成RAID1。RAID
1+0同时保证了RAID0的高速性能和RAID1的安全性,但需要更多的磁盘数量。1345.7.2RAID5(P212)特点N个盘,则有相当于N-1个盘为数据,1个盘为校验。任何一个盘损坏,可由其他盘数据恢复1355.7.3光盘存储器CD:650MB~800MBDV
D:4.7G、8.5G(DL)HD-DVD:15GB(单面单层)BD(蓝光):23.3GB,25GB,27GB(单面单层)1365.7.3光盘存储器的工作原理光盘存储示意性工作原理1375.7.3光盘扇区结构信息记录的轨迹称为光道。
光道上划分出一个个扇区,它是光盘的最小可寻址单位。扇区的结构如图所示。MN:分SC:秒FR:帧,一秒75帧MD:存储模式•0:不存数据,光盘导入/导出区•1:校验区生效,ECC校验•2:校验区作为数据存储Question:一倍光驱速度如何求?1385.9
5.9(不要求)5.8存储保护5.9IA32构架的存储系统举例一二139