




已阅读5页,还剩226页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第章存储器,4.1概述,4.2主存储器,4.3高速缓冲存储器,4.4辅助存储器,4.1概述,(1)按存储介质分类半导体器件:半导体存储器(RAM、ROM,用作主存)磁性材料:磁表面存储器(磁盘、磁带,用作辅存)光介质:光盘存储器(用作辅存)(2)按存取方式分类随机存取存储器RAM:存储器中任何存储单元的内容都能被随机存取,且存取时间和存储单元的物理位置无关(主存)只读存储器(ROM):只能读出,不能写入。顺序存取存储器:存取时间和存储单元的物理位置有关(磁盘、磁带)相联存储器:按内容访问。,一、存储器的分类,3、按在计算机系统中的作用分类主存储器:又称内存,为主机的一部分,用于存放系统当前正在执行的数据和程序,属于临时存储器。辅助存储器:又称外存,为外部设备,用于存放暂不用的数据和程序,属于永久存储器。,磁盘、磁带、光盘,高速缓冲存储器(Cache),FlashMemory,存储器,4.1,1.存储器三个主要特性的关系,二、存储器的层次结构,4.1,缓存主存辅存,现代计算机中通常采用“cache-主存-辅存”三级存储系统。,为了弥补主存速度的不足,在CPU和主存储器之间增设速度快、容量小、每位价格较高的Cache,用辅助硬件将Cache和主存构成整体,如图所示,称为“Cache-主存”层次。,“Cache-主存”层次,为了弥补主存容量的不足,人们提出了“主存-辅存”层次,即在主存和辅存之间,增设辅助的软硬件设备,让它们构成一个整体。,“主存-辅存”层次,4.2主存储器,一、概述,1.主存的基本组成,驱动器,译码器,MAR,控制电路,地址总线,数据总线,2.主存和CPU的联系,4.2,高位字节地址为字地址,低位字节地址为字地址,设地址线24根,按字节寻址,按字寻址,若字长为16位,按字寻址,若字长为32位,3.主存中存储单元地址的分配,4.2,224=16M,8M,4M,4、主存储器的性能指标,1、存储容量:指存储器可容纳的二进制信息量,描述存储容量的单位是字节或位。量化单位:1K2101M2201G2301T240存储容量存储单元个数存储字长存储容量存储单元个数存储字长/8,兆,千兆,太,2、存储速度:由以下3个方法来衡量。存取时间:指启动一次存储器操作到完成该操作所需的全部时间。存取时间愈短,其性能愈好。通常存取时间用纳秒(1ns109s)为单位。存取周期:指存储器进行连续两次启动存储器操作所需的最小间隔时间。通常存取周期TC大于存取时间tA,即TCtA。存储器带宽:是单位时间里存储器所能存取的最大信息量,存储器带宽的计量单位通常是位/秒(bps)或字节/秒,它是衡量数据传输速率的重要技术指标。,3、存储器的价格:用每位的价格来衡量。设存储器容量为S,总价格为C,则位价为C/S(分/位)。它不仅包含了存储元件的价格,还包括为该存储器操作服务的外围电路的价格。4、可靠性:指存储器正常工作(正确存取)的性能。5、功耗:存储器工作的耗电量。存储容量、速度和价格的关系:速度快的存储器往往价格较高,容量也较小。容量、速度和价格三个指标是相互制约的。,二、半导体存储芯片简介,1.半导体存储芯片的基本结构,4.2,存储芯片片选线的作用,用16K1位的存储芯片组成64K8位的存储器,32片,4.2,2.半导体存储芯片的译码驱动方式,(1)线选法,4.2,(2)重合法,4.2,0,0,(1)SRAM存储位元,“1”状态:A=1,B=0T1截止T2导通“0”状态:A=0,B=1T2截止T1导通,六管MOS静态存储器结构,三、随机存取存储器(RAM),1.静态RAM(SRAM),单元电路由六个MOS管组成,编号为T1-T8。T1、T2两个组成双稳态触发器,这是单元电路的基本存储单元。T3、T4为负载管;T3和T1构成一个反向器,负载T4和T1构成另外一个反向器,这两个反向器构成一个双稳态触发器。,T5、T6为控制管,接X地址选择线(又称字线),当X地址选择线为高电平时,T5、T6导通,使双稳态电路与读/写电路连接,可对其进行写入或读出。当X地址选择线为低电平时,T5、T6断开,双稳态电路与读/写电路断开,T1、T2存储信息保持原状态不变。,(1)写操作如果要写入1,则在I/O线上输入高电平,在I/O线上输入低电平,它们通过T5、T7和T6、T8分别与A、B端相连,使A1,B0。则T1截止,T2导通。当输入信号和地址选择信号消失后,T5、T6、T7、T8截止,T1、T2保持被写入的状态。只要不断电,写入的信息就保持不变。,(2)读操作只要某个存储单元被选中,则T5、T6、T7、T8导通,存储信号被送到I/O和I/O线上。读出时I/O和I/O线接到一个差动放大器上,由电流的方向可以判定存储单元的信号是“1”还是“0”。,(2)静态RAM芯片举例,Intel2114外特性,存储容量1K4位,4.2,Intel2114RAM矩阵(6464)读,Intel2114RAM矩阵(6464)读,Intel2114RAM矩阵(6464)读,Intel2114RAM矩阵(6464)读,Intel2114RAM矩阵(6464)读,Intel2114RAM矩阵(6464)读,15,0,31,16,47,32,63,48,15,0,31,16,47,32,63,48,读写电路,读写电路,读写电路,读写电路,0,1,63,0,15,行,地,址,译,码,列,地,址,译,码,I/O1,I/O2,I/O3,I/O4,WE,CS,0,0,0,0,0,0,0,0,0,0,Intel2114RAM矩阵(6464)读,0,16,32,48,Intel2114RAM矩阵(6464)读,0,16,32,48,Intel2114RAM矩阵(6464)读,0,16,32,48,Intel2114RAM矩阵(6464)写,Intel2114RAM矩阵(6464)写,Intel2114RAM矩阵(6464)写,Intel2114RAM矩阵(6464)写,Intel2114RAM矩阵(6464)写,Intel2114RAM矩阵(6464)写,Intel2114RAM矩阵(6464)写,Intel2114RAM矩阵(6464)写,Intel2114RAM矩阵(6464)写,(3)静态RAM读时序,4.2,(4)静态RAM(2114)写时序,4.2,“1”状态:电容C上有电荷“0”状态:电容C上无电荷再生:读出后信息可能被破坏,需要重写。刷新:经过一段时间后,信息可能丢失,需要重写。,单管MOS动态存储器结构,2.动态RAM(DRAM),(1)动态RAM基本单元电路,单元读写:只有行选择信号和列选择信号同时有效时才选中该存储单元,再根据数据线状态和控制电路完成对电容电压的读取(读)或对电容的充放电(写)。,刷新:由于电容器存在漏电,因此需要定期对电容器充放电,每隔一定时间(一般2ms左右的刷新周期)就要刷新一次。,DRAM芯片结构:存储阵列为多页面结构,地址线为行地址和列地址分别传送,由行选通(RAS)信号和列选通信号(CAS)控制。数据线分为输入和输出,WE有效为写,无效为读。,(2)动态RAM芯片举例,三管动态RAM芯片(Intel1103)读,读写控制电路,1KX1位,三管动态RAM芯片(Intel1103)写,三管动态RAM芯片(Intel1103)写,三管动态RAM芯片(Intel1103)写,4.2,三管动态RAM芯片(Intel1103)写,三管动态RAM芯片(Intel1103)写,三管动态RAM芯片(Intel1103)写,三管动态RAM芯片(Intel1103)写,读写控制电路,三管动态RAM芯片(Intel1103)写,读写控制电路,三管动态RAM芯片(Intel1103)写,读写控制电路,单管动态RAM4116(16K1位)外特性,64X128,64X128,4116(16K1位)芯片读原理,4.2,63,0,0,0,左,右,4116(16K1位)芯片写原理,4.2,63,0,(3)动态RAM时序,行、列地址分开传送,写时序,数据DOUT有效,数据DIN有效,读时序,4.2,tW-WR,tsu-DIN-CAS,/RAS/CAS/WEDIN,tsu-RD-CAS,tsu-WR-CAS,th-DIN-CAS,(4)动态RAM刷新,刷新与行地址有关,“死时间率”为128/4000100%=3.2%,“死区”为0.5s128=64s,4.2,以128128矩阵为例,tC=tM+tR,无“死区”,分散刷新(存取周期为1s),(存取周期为0.5s+0.5s),4.2,以128128矩阵为例,分散刷新与集中刷新相结合(异步刷新),对于128128的存储芯片(存取周期为0.5s),将刷新安排在指令译码阶段,不会出现“死区”,“死区”为0.5s,若每隔15.6s刷新一行,每行每隔2ms刷新一次,4.2,3.动态RAM和静态RAM的比较,存储原理,集成度,芯片引脚,功耗,价格,速度,刷新,4.2,(1)掩模式ROM,采用掩模工艺制成,其内容由厂方生产时写入,用户只能读出使用而不能改写。,四、只读存储器(ROM),若地址线A1A0=00,则选中0号单元,即字线0为高电平,若有管子与其相连(如位线2和0),其相应的MOS管导通,位线输出为0,而位线1和3没有管子与字线相连,则输出为1。故存储器的内容取决于制造工艺,存储矩阵的内容如表所示。,掩膜ROM存储矩阵的内容,优点:可靠性高,集成度高,形成批量之后价格便宜;缺点:用户对制造厂商的依赖性过大,灵活性差。,(2)可写入(可编程)只读存储器PROM,例:熔丝烧断型,写“0”时:烧断熔丝写“1”时:保留熔丝,在制作时不写入任何信息,但允许用户利用专门的设备(编程器)写入自己的程序,写入是一次性的。写入后,其内容将无法改变。双极型PROM有两种结构:一种是熔丝烧断型;一种是PN结击穿型;,(3)光擦可编程只读存储器EPROM,EPROM不仅可以由用户利用编程器写入信息,而且可以对其内容进行多次改写。EPROM又可分为两种:一种紫外线擦除(EPROM);一种是电擦除(EEPROM);,通常EPROM存储电路是利用浮栅MOS管构成的,又称FAMOS管,即浮栅雪崩注入MOS管),浮栅管的栅极没有引出端,而被SiO2绝缘层所包围,称为“浮栅”。在原始状态,该管栅极上没有电荷,没有导通沟道,D和S是不导通的。如果将源极S和衬底接地,在衬底和漏极形成的PN结上加一个约24V的反向电压,可导致雪崩击穿,产生许多高能量的电子,这些电子比较容易越过绝缘薄层进入浮栅。注入浮栅的电子数量由所加电压脉冲的幅度和宽度来控制,如果注入的电子足够多,这些负电子在硅表面上感应出一个连接源漏极的反型层,使源漏极呈低阻态。当外加电压取消后,积累在浮栅上的电子没有放电回路,因而在室温和无光照的条件下可长期地保存在浮栅中。,将一个浮栅管和MOS管串起来组成如图所示的存储单元电路。于是浮栅中注入了电子的MOS管源漏极导通,当行选线选中该存储单元时,相应的位线为低电平,即读取值为“0”,而未注入电子的浮栅管的源漏极是不导通的,故读取值为“1”。在原始状态(即厂家出厂),没有经过编程,浮栅中没注入电子,位线上总是“l”。,消除浮栅电荷的办法是利用紫外线光照射,由于紫外线光子能量较高,从而可使浮栅中的电子获得能量,形成光电流从浮栅流入基片,使浮栅恢复初态。EPROM芯片上方有一个石英玻璃窗口,只要将此芯片放入一个靠近紫外线灯管的小盒中,一般照射10分钟左右,读出各单元的内容均为FFH,则说明该EPROM已擦除。,(4)电擦可编程只读存储器EEPROM,若VG为正电压,第一浮空栅极与漏极之间产生隧道效应,使电子注入第一浮空栅极,即编程写入。若使VG为负电压,强使第一级浮空栅极的电子散失,即擦除。EEPROM的编程与擦除电流很小,可用普通电源供电,而且擦除可按字节进行。,几种非易失性存储器的比较,半导体存储器,(2)2716EPROM的逻辑图和引脚,4.2,(1).位扩展,用1K4位的SRAM芯片1K8位的SRAM存储器,只加大字长,而存储器的字数与存储器芯片字数一致,对片子没有选片要求。,五、存储器与CPU的连接,1.存储器容量的扩展,位数的扩展:地址线、片选线和读写信号线并联,数据线单独引出,(2)、字扩展,用1K位的SRAM芯片2K8位的SRAM存储器,分析地址:A10用于选择芯片A9A0用于选择芯片内的某一存储单元,(3)、字位扩展,需扩展的存储器容量为MN位,已有芯片的容量为LK位(LM,KN),用M/L组芯片进行字扩展;每组内有N/K个芯片进行位扩展。,D7D4D3D0,分析:用1K4位的存储器芯片组成4K8位的存储器,需多少片这样的芯片?如何连接?,位方向,2、主存储器与CPU的连接,“与”门电路符号,“或”门电路符号,“非”门电路符号,微机中常用的数字部件,基本逻辑门电路,异或逻辑,同或逻辑,或非逻辑,与非逻辑,38线译码器74LS138,单38线二进制译码器;译码输出低电平有效;2个低电平有效译码使能端和1个高电平有效译码使能端;,1、根据CPU芯片提供的地址线数目,确定CPU访存的地址范围,并写出相应的二进制地址码;2、根据地址范围的容量,确定各种类型存储器芯片的数目和扩展方法;3、分配CPU地址线。CPU地址线的低位(数量存储芯片的地址线数量)直接连接存储芯片的地址线;CPU高位地址线皆参与形成存储芯片的片选信号;4、连接数据线、R/W#等其他信号线,MREQ#信号一般可用作地址译码器的使能信号。,需要说明的是,主存的扩展及与CPU连接在做法上并不唯一,应该具体问题具体分析,例4.1,设CPU有16根地址线,8根数据线,MREQ访存控制信号(低电平有效),WR读/写控制信号(高电平为读,低电平为写)RAM:1K4位;4K8位;8K8位ROM:2K8位;4K8位;8K8位74LS138译码器和各种门电路画出CPU与存储器的连接图,要求主存地址空间分配:6000H67FFH为系统程序区;6800H6BFFH为用户程序区。合理选用上述存储芯片,说明各选几片?详细画出存储芯片的片选逻辑图。,例4.1解:,(1)写出对应的二进制地址码,(2)确定芯片的数量及类型,A15A14A13A11A10A7A4A3A0,4.2,(3)分配地址线,A10A0接2K8位ROM的地址线,A9A0接1K4位RAM的地址线,(4)确定片选信号,4.2,1K4位,1K4位RAM,1K4位,RAM,&,例4.1CPU与存储器的连接图,4.2,例4.2:设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与存储器的连接图。,解:1)计算主存地址空间的分配A15-A12A11-A8A7-A000000000000001111111最小的8K*8位系统程序区,选1片ROM0010000000001111111101000000000101111111相邻的16K*8位用户程序区,选2片8K*8位的RAM,命名为RAM1,RAM2,ROM,RAM1,RAM2,A15-A12A11-A8A7-A011110000001111111111最大地址空间的4K*8位,为系统程序工作区,采用1片4K的RAM芯片,命名为RAM3,RAM3,分配CPU地址线:A0-A12:1片8K*8ROM,2片8K*8位RAM1和RAM2芯片内部地址线;A0-A11:1片4K*8位RAM3内部地址线;片选信号:A15A14A13作为3-8译码器的地址输入,译码输出Y0,Y1,Y2分别是ROM,RAM1,RAM2的片选信号,Y7与A12共同产生RAM3的片选信号;,例4.3设CPU有20根地址线,16根数据线。并用IO/M作访存控制信号。RD为读命令,WR为写命令。现有EPROM,外特性如下:,4.2,64KX8位32KX8位64KX16位,64KX8位32KX8位64KX16位,解:1)CPU按字访问:20位地址中,A0用于奇偶存储体的访问控制,因此实际的字单元地址是A1A20,对应范围是512K;按字节访问时,有2个大小为512K的存储体,对应的地址范围是1MB;2)按字节访问时需区分奇偶存储体,因此ROM,RAM必须选择8位的芯片进行位扩展构成;,3)计算主存地址空间的分配64K*8位的系统程序区A19-A16A15-A12A11-A1A011110000001111111110对应32K的偶字节存储体A19-A16A15-A12A11-A1A011110000011111111111对应32K的奇字节存储体由2片32K*8位的ROM构成系统的64KB区,64K*8位的用户程序区A19-A16A15-A12A11-A1A011100000001110111110对应32K的偶字节存储体A19-A16A15-A12A11-A1A011100000011110111111对应32K的奇字节存储体由2片32K*8位的RAM构成用户的64KB区。,系统程序区、用户程序区存储体的选择系统程序区:64KB=32KB奇存储体+32KB偶存储体用户程序区:64KB=32KB奇存储体+32KB偶存储体,分配CPU地址线:32K的ROM,RAM芯片内部使用A1A15地址线译码;3-8译码器:BHE,A0控制奇偶访问,作为B、A地址输入,选择奇偶存储体;A16作为C地址输入,选择程序、用户区的存储区;(也可以使用A17A19中的一个作C地址输入)A19,A18,A17控制使能端G1,IO/M控制使能G2A,G2B,译码器输出Y4有效时,同时选择ROM1,ROM2,CPU以字形式访问,Y5有效时访问ROM1(奇体),Y6有效时访问ROM2(偶体);译码器输出Y0有效时,同时选择RAM1,RAM2,CPU以字形式访问,Y1有效时访问RAM1(奇体),Y2有效时访问RAM2(偶体);,六、存储器的校验,为了能及时发现并纠正存储过程中数据的差错,需要对数据作检验和校正,常常将原数据配成校验码。,1、码距,(1)定义:一种编码体制中,各组合代码间不同位的bit数称为距离,其中最小的距离称为该编码的码距,00110000,00110010,码距=2,码距=1,(2)作用:衡量一种编码的查错、纠错能力。,三位编码a2a1a000001001201030114100510161107111,用二进制编8个码字,4位编码a3a2a1a00000011001210103001141100501016011071111,码距1,码距2,(3)查错与纠错的原理:,1)约定某种规律作为检测的依据,将有效信息位+校验位形成校验码,再传输;译码后检测是否符合约定规律,从而知道传输数据有没有错误。,2)增大码距可以提高校验信息量,为指出出错位和纠正错误位提供了可能。L-1=D+C(DC)L编码的最小距离D检测错误的位数C纠正错误的位数,4、汉明码HanmingCode,(1)约定编码规律:汉明码是具有一位纠错能力的编码,汉明码的组成有下列三要素。,汉明码的组成需要增添检测位k的计算:,2kn+k+1n有效信息位数,n-k的规律见下表4.2,表4.2代码长度与检测位位数的关系,检测位的位置i安排:,2i(i=0、1、2、3),检测位的取值原则:,检测位的取值与该位Ci(i=1,2,4,8,)所在的检测“小组”gi中承担的奇偶校验任务有关。,gi小组独占第2i1位gi和gj小组共同占第2i1+2j1位gi、gj和gl小组共同占第2i1+2j1+2l1位,C1检测的g1小组包含第1,3,5,7,9,11C2检测的g2小组包含第2,3,6,7,10,11C4检测的g3小组包含第4,5,6,7,12,13C8检测的g4小组包含第8,9,10,11,12,13,14,15,例:求0101按“偶校验”配置的海明码,解:n=4根据2kn+k+1得k=3海明码排序如下:,结论:0101的配偶海明码为:0100101,1001101,(2)译码纠错过程:,形成新的检测位Pi,(i=1,2,4,8),其检测算法与Ci对应。,对于按“偶校验”配置的海明码,正确传输后Pi=0,对于按“奇校验”配置的海明码,正确传输后Pi=1;否则Pi的组合数值(高位到低位排列)将指明出错位数;若是有效位出错,则取反该位即可,若检测位出错,一般不予纠正。,如果编码时k=3,则新检测位为P4P2P1,且:,例:已知接收到的海明码为0100111,(按配偶原则配置)试问要求传送的信息是什么?,解:,先判断是否传输有错,纠错过程如下:,P4P2P1=110B=6,第6位出错,可纠正为0100101,故要求传送的信息为0101。,k=3,则新检测位为P4P2P1,且:,例4.4,求0101按“偶校验”配置的汉明码,解:,n=4,根据2kn+k+1,得k=3,汉明码排序如下:,C1C2C4,0,0101的汉明码为0100101,4.2,1,0,例4.5按配奇原则配置1100101的汉明码,解:,n=7根据2kn+k+1得k=4海明码排序如下:,序号1234567891011,名称C1C21C4100C8101,配置11101001101,七、提高访存速度的措施,采用层次结构缓存、主存、辅存,寻找高速元件*自学SDRAMRDRAMCDRAM,调整主存结构单体多字、多体并行、设置存控,1、单体多字系统,指令和数据在主存内连续存放。存储器内仅一套地址寄存器和地址译码器,但可以在一个存取周期内从同一地址取出n条指令或数据,再同时或分时由DB送CPU。相当于1/n周期就向CPU提供了一条指令,增大了存储器带宽。,在不改变存取周期的前提下,增加存储器的带宽,4.2,启动存储体,处理第一个字,处理第二个字,处理第三个字,处理第四个字,2、多体并行系统,特点:通过改进主存的组织方式,在不改变存储器存取周期的情况下,提高存储器的带宽。结构特点:多体交叉存储器由M个的存储体(或称存储模块)组成,每个存储体有相同的容量和存取速度,又有各自独立的地址寄存器、地址译码器、读写电路和驱动电路。既能并行工作,也能交叉工作。编址方法:顺序或交叉编址。,访问:CPU同时送出的M个地址,只要他们分属于M个存储体,访问就不会冲突;由存储器控制部件控制它们分时使用数据总线进行信息传递。适合采用流水线方式并行存取,虽然每个存储体的存储周期没变,但是当CPU连续访问一个字块时,可以大大提高存储器的带宽。,(1)高位交叉,4.2,顺序编址,各个体并行工作,4.2,体号,高位交叉,4.2,(2)低位交叉,各个体轮流编址,4.2,低位交叉的特点,在不改变存取周期的前提下,增加存储器的带宽,4.2,启动存储体0,启动存储体1,启动存储体2,启动存储体3,设四体低位交叉存储器,存取周期为T,总线传输周期为,为实现流水线方式存取,应满足T4。,连续读取n个字所需的时间为t1=T(n1),若采用高位交叉编址,连续读取n个字所需的时间t2=nT,例4.6.设有四个模块组成的四体存储器结构,每个体的存储字长为32位,存取周期为200ns。假设数据总线宽度为32位,总线传输周期为50ns,试求顺序存储和交叉存储的存储器带宽。解:顺序存储(高位交叉编址)和交叉存储(低位交叉编址)连续读出4个字的信息量是324=128位。顺序存储存储器连续读出4个字的时间是200ns4=800ns=810-7s交叉存储存储器连续读出4个字的时间是200ns50ns(4-1)=350ns=3.510-7s顺序存储器的带宽是128/(810-7)=16107bps交叉存储器的带宽是128/(3.510-7)=37107bps,(3)存储器控制部件(简称存控),易发生代码丢失的请求源,优先级最高,严重影响CPU工作的请求源,给予次高优先级,4.2,4.2,3.高性能存储芯片,(1)SDRAM(同步DRAM),在系统时钟的控制下进行读出和写入CPU无须等待,(2)RDRAM,由Rambus开发,主要解决存储器带宽问题,(3)带Cache的DRAM,在DRAM的芯片内集成了一个由SRAM组成的Cache,有利于猝发式读取,一、Cache的基本原理,1、Cache的特点2、Cache的工作原理3、Cache的命中率,4.3高速缓冲存储器,1、Cache的特点,Cache是指位于CPU和主存之间的一个高速小容量的存储器,一般由SRAM构成。Cache功能:用于弥补CPU和主存之间的速度差异,提高CPU访问主存的平均速度。设置Cache的理论基础,是程序访问的局部性原理。Cache的内容是主存部分内容的副本,Cache的功能均由硬件实现,对程序员是透明的。,2、Cache的工作原理,Cache、主存与CPU的关系,Cache的速度比主存快510倍。,主存和缓存的编址,主存和缓存按块存储块的大小相同,B为块长,CPU在读写存储器时,Cache控制逻辑首先要依据地址来判断这个字是否在Cache中,若在Cache中,则称为“命中”;若不在,则称为“不命中”。针对命中/不命中、读/写操作,Cache的处理是不同的:读命中:立即从Cache读出送给CPU;读不命中:通常有两种解决方法:,Cache的读写操作,A)将主存中该字所在的数据块复制到Cache中,然后再把这个字传送给CPU;B)把此字从主存读出送到CPU,同时,把包含这个字的数据块从主存中读出送到Cache中。,主存,Cache,cpu,主存,Cache,cpu,写不命中:说明Cache中没有,直接将该字写入主存中,且不再调入Cache;写命中:说明Cache中有(即有该地址),通常也有两种方法进行处理:写直达法:同时对Cache和主存进行写操作(同时修改);写回:只写Cache,仅当此Cache块被替换时,才将该块写入主存(只修改Cache).,Cache的读写操作,读,只对主存写,4.3,写,Cache的基本结构,由CPU完成,3、Cache的命中率,命中率指CPU访问主存数据时,命中Cache的次数,占全部访问次数的比率;失效率就指不命中Cache的次数,占全部访问次数的比率。命中率h取决于程序的行为、Cache的容量、组织方式、块大小。在一个程序执行期间,设Nc表示Cache完成存取的总次数,Nm表示主存完成存取的总次数,则命中率:,例题:CPU访问Cache命中2000次,访问主存50次,Cache存取周期50ns,主存存取周期200ns。求:Cache-M.M系统的命中率、平均访问时间、效率及使用缓存后存储系统性能提高倍数。,二、主存与Cache的地址映射方式,讨论的问题:如何根据主存地址,判断Cache有无命中并变换为Cache的地址,以便执行读写。有三种地址映射方式:1、直接映射2、全相联映射3、组相联映射讨论前提:Cache的数据块称为行,主存的数据块称为块,行与块是等长的;主存容量为2m块,Cache容量为2c行,每个字块中含2b字。,用标记记录与某缓存块建立了对应关系的主存块块号,主存和缓存的编址,1、直接映射,特点:是一种多对一的映射关系:主存的第i块一定映射到Cache的第j行,且:,优点:映射方式简单,易实现。缺点:机制不灵活,Cache命中率低。,标记K:,标记t=m-c位0,1,.2t-1组号,只需要比较区号(t=m-c)就可以判断主存内容是否在缓存中,t位比较器,数据有效时,命中,未命中,替换,主存,缓存,2、全相联映射,特点:是多对多的映射关系:对于主存的任何一块均可以映射到Cache的任何一行。优点:机制灵活,命中率高。缺点:比较器电路难于设计和实现,因此只适合于小容量的Cache。,主存中的任一块可以映象到缓存中的任一块,比较:,需全比较区号和块内地址才能判断主存内容是否在缓存中,m位比较器,数据有效时,命中,未命中,替换,主存,缓存,3、组相联映射,特点:将Cache的行分成2c-r组,每组2r行。主存的字块存放到Cache中的哪个组是固定的,至于映射到该组哪一行是灵活的。,优点:大大增加了映射的灵活性,主存中一块可映射到Cache的2r块,提高了命中率。每次比较只是进行2r路比较,r较小时,硬件开销不是很大。组相联映像通常采用2路、4路和8路比较,即取r=1,r=2,r=3。,标记是主存的组号t=m-c+r,字块内地址,组地址,主存字块标记,s=t+r位,q=cr位,b位,组,0,1,2c-r1,主存地址,Cache,主存储器,m位,共Q组,每组内两块(r=1),1,某一主存块j按模Q映射到缓存的第i组中的任一块,i=jmodQ,直接映象,全相联映象,字块0,字块1,字块0,字块2c-r,字块2c-r+1,比较:,需全比较区号和组地址才能判断主存内容是否在缓存中,m位比较器,数据有效时,命中,未命中,替换,例4.8,假设主存容量为512KB,Cache容量为4KB,每个字块为16个字,每个字32位。(1)Cache地址有多少位?可容纳多少块?(2)主存地址有多少位?可容纳多少块?(3)在直接映射方式下,主存的第几块映射到Cache的第5块(设起始字块为第1块)?(4)画出直接映射方式下主存地址字段中各段的位数。,解(1)因为Cache容量为4KB,所以Cache地址为12位,每个字32位4B,则Cache共有4KB/4B=1K字,每块是16个字,所以可容纳的块数为1KB/16=64块.(2)因为主存容量为512KB,所以主存地址为19位,可容纳的块数为512KB/16*4B=8K块8192块.(3)在直接映射方式下,Cache共有64块,主存共有8192块,因此主存的第5,64+5,2*64+5,映射到Cache的第5块中.,(4)字块内地址为6位(16*4=26)Cache字块地址为6位(因为有64个块)主存字块标记为7位(19-6-6=7),例4.9:主存容量512K16位,Cache容量409616位,块长为4个16位的字,按字地址访存。Cache地址有多少位,可容纳多少块?主存地址多少位,可容纳多少块?在直接映射方式下,设计主存地址格式在全相联映射方式下,设计主存地址格式在二路组相联映射方式下,设计主存地址格式6.若主存容量、Cache容量、块长不变,在四路组相联方式下,设计主存地址格式,(6)若主存容量改为51232位,即双字宽存储器,块长仍为4个16位的字,访存地址仍为字地址,则主存容量可改写为1024K16位,所以主存地址为20位。由四路组相联可知,Cache共有1024/4=256个组,所以组地址为8位,所以主存字块标记位为20-2-8=10。主存字块标记10位组地址8位字块内地址2位,例4.10假设Cache的工作速度是主存的5倍,且Cache被访问命中的概率为95,则采用Cache后,存储器性能提高多少?解:设Cache的存取周期为t,主存的存取周期为5t,则系统的平均访问时间为ta=0.95Xt+0.05X5t=1.2t性能为原来的5t/1.2t=4.17倍,即提高了3.17倍。,例4.11,设某机主存容量为16MB,Cache容量为KB,每个字块为个字,每个字32位。设计一个四路组相联映射的Cache组织。(1)画出主存地址字段中各段的位数。(2)设Cache初态为空,CPU依次从主存第0,1,2,99号单元读出100个字(主存一次读出一个字),并重复此次序读10次,问命中率是多少?(3)若Cache的速度是主存速度的5倍,试问有Cache和无Cache相比,速度提高了多少倍?(4)系统的效率为多少?,解:(1)字块内地址为5位(8*4=25)Cache字块组地址为6位(因为有8K/8*4*4=64个组)主存字块标记为13位(24-6-5=13),(2)由于每个字块中有8个字,而且初态为空,因此CPU读第0号单元时,未命中,必须访问主存,同时将该字所在的主存块调入Cache第0组中的任一块内,接着CPU在连续读100个字中,共有13次未命中(100/8=13),而后9次循环读100个字全部命中,命中率为(100*10-13)/100*10=0.987,(3)依题意,设主存周期为5t,Cache周期为t,没有Cache时的访问时间为5t*1000,有Cache时的访问时间为t*(1000-13)+5t*13,则速度提高的倍数为5t*1000/t*(1000-13)+5t*13-1=3.75(4)系统的效率为t/0.987*t+(1-0.987)*5t=95%,1、随机替换算法2、先进先出算法(FIFO)在地址变换表中设置一个历史位,当替换时,总是把一组中最先调入Cache存储器的字块替换出去,它不需要随时记录各个字块的使用情况,所以实现容易且开销小。3、最近最少使用算法(LRU)该算法统计哪一个Cache行是近段时间使用次数最少的Cache行,需替换时就将它替换出去。LRU替换算法可以通过为每个Cache行设置一个计数器来实现LRU替换算法,Cache每命中一次,命中行的计数器被清零,其他行的计数器加1,需要替换的话,就将计数器值最大的行替换出去。,三、替换算法,设计Cache主要考虑五个问题:第一,容量。第二,Cache中行的大小。第三,Cache的组织(地址映射方式)。第四,指令和数据共用同一个Cache还是分享不同Cache。第五,Cache的层次。,四、Cache的多层次设计,1、统一Cache和分离Cache统一Cache:只有一个Cache,指令和数据混放。分离Cache:分为指令Cache和数据Cache。它消除了流水线中指令处理器和执行单元间的竞争,因此,特别适用于Pentium和PowerPC这样的超标量流水线中;是Cache结构发展的趋势。2、单级Cache与两级Cache一级Cache和二级Cache采用两级Cache结构可以提高性能,主存的后备和扩充,也称外存。1.特点:容量大,可靠性高,单位存储容量价格低,在掉电情况下能长期保存信息。非易失性存储器。,磁芯,4.4辅助存储器,一、概述,2.磁表面存储器的主要技术指标,磁盘道密度:沿半径方向单位长度磁道数,tpm/tpi,磁带/磁盘位密度:单位长度磁道记录的比特数bpm/bpi,记录密度,存储容量,磁表面存储器所能存储的二进制信息的总量,Byte,平均寻址时间,磁盘访问过程直接存取方式(1)寻道:将读写磁头移动到正确的磁道上(2)寻找扇区:等待磁盘旋转到需要访问的扇区(3)数据传输:读写数据(1个或多个扇区),磁带访问过程顺序存取方式磁头不动,磁带移动,不寻道但需要等待。,数据传输率,误码率,常用循环冗余码CRC来发现和纠正传输错误,记录介质运动速度,记录密度,数据传输率,铁氧体,线圈,电流,磁记录介质,1、磁记录原理,磁头,软磁材料导磁率高,饱和磁感应强度大矫顽力小,剩余磁感应强度小,磁记录材料,硬磁材料记录密度高,记录信息时间长输出信号幅度大,噪声低表面组织紧密、光滑、无麻点薄厚均匀,温度、湿度影响小,写:信息电流磁化记录介质,磁层表面磁化极性方向区别01读:记录介质均匀移动,在磁头中感应出电动势,形成读出电流,剩磁方向决定01,二、磁记录原理和记录方式,写入过程在写磁头线圈中通以一定方向的写电流,于是在磁头下方的一个局部区域被磁化,形成一个磁化单元或称记录单元。当这部分介质移出磁头作用区后,仍将留下足够强的剩磁。在写磁头中通以正、负两个不同方向的写电流,就会产生两种不同的剩磁状态,正好对应二进制信息的“1”和“0”。读出过程读出时,读出线圈不外加电流。当某一磁化单元运动到读磁头下方时,使得磁头中流过的磁通有很大的变化,于是在读出线圈两端产生感应电动势e。感应电动势e经放大、检波、限幅、整形和选通后,获得符合要求的信号。,写,4.4,4.4,读,归零制(RZ)线圈中正脉冲电流为“1”,负脉冲电流表示“0”,两位信息位之间线圈中无电流。,2.磁表面存储器的记录方式,一种编码方法,即按某种规律将一串二进制信息,通过读写电路变换成磁层介质中的磁化翻转序列,不归零制(NRZ)线圈中一直有正或负脉冲电流,相邻两位信息位代码不同才改变电流方向。,见1翻转的不归零制(NRZ1)线圈中始终脉冲电流,只有见到“1”才改变电流的方向,记录“0”时电流方向保持不变。,调相制(PM)相位编码。用脉冲边沿来表示,记录“0”由负变正,记录“1”由正变负。相同相邻信息间要变方向,不同相邻信息间不变方向。,调频制(FM)频率编码。“1”:高频记录,位周期中心翻转;“0”:低频记录,位周期中心不翻转;位与位之间都翻转。,改进的调频制(MFM)倍密度频率编码。“1”:高频记录,位周期中心翻转;“0”:低频记录,位周期中心不翻转;位与位只有连续两个(2以上)的“0”时才在位周期起始位置翻转,高编码效率:位密度与磁化翻转密度比值,高好。高自同步能力:从单个磁道读出的脉冲序列中提取同步脉冲时钟的难易程度,用最小磁化翻转间隔与最大磁化翻转间隔比值衡量,高好。高信息独立性:某一位读出误码不影响后续位的正确性,高好。高读分辨力高抗干扰力低电路复杂度宽频带宽度,(3)记录方式的评价指标:,1、硬磁盘类型,温彻斯特盘:可移动磁头固定盘片,三、硬磁盘存储器,2、硬磁盘结构,主机,磁盘控制器,磁盘驱动器,盘片,下面以目前最有代表性的温切斯特磁盘存储器为例:,(1)磁盘驱动器,主轴系统:盘片、传动机构、磁头、读写臂、小车、电机驱动定位系统:位置检测、比较、放大电路数据控制部分:地址接收、记录电流形成、读放大、译码,(1)磁盘驱动器,(2)磁盘控制器,一块硬件插板,接收主机命令,转换为磁盘驱动器的控制命令,常见控制器-驱动器界面:,ST506硬盘接口,ESDI/SMD硬盘接口,SCSI硬盘接口,驱动器,驱动器,驱动器,(2)磁盘控制器,接收主机发来的命令,转换成磁盘驱动器的控制命令,实现主机和驱动器之间的数据格式转换,控制磁盘驱动器读写,通过总线,(3)盘片,一组存储信息的磁表面载体,按格式记录数据,3、硬磁盘记录格式,(1)定长记录格式,01,字节,记录块,记录,文件,台号:系统挂接的硬盘个数,双盘,多盘,定长记录磁盘地址,磁道号:磁盘一面含的圈数,在n面的同一半径的磁道形成圆柱面,柱面信息被移动磁头组同时读出,故也叫柱面号。,扇段号:每个盘面分为若干扇区,每条磁道被分割为若干扇段。如右ISOT盘扇段内格式:,盘面号:每个硬盘中一组磁盘的盘面数,一般2n-2面,定长记录格式中磁盘地址构成:,定长记录格式寻址次序:决定操作的硬盘台号确定硬盘的柱面磁道号选定组中某磁头盘面号旋转磁盘找扇区扇段号,=寻道时间+旋转延迟+传输时间+磁盘控制器延迟,定长记录格式中访存时间:,寻道时间:将磁头移动到正确的磁道上与每面磁道数、磁盘直径、磁头组速度有关旋转延迟:等待磁盘上扇区旋转到磁头下与磁盘组旋转速度、扇区数、当前扇段位置有关传输时间:真正的数据读/写时间与旋转速度、存储密度、数据传输率有关,例4.12假设磁盘存储器共有6个盘片,最外两侧盘面不能记录,每面有204条磁道,每条磁道有12个扇段,每个扇段有512B,磁盘机以7200rpm速度旋转,平均定位时间为8ms。(1)该磁盘存储器的存储容量。(2)该磁盘存储器的平均寻址时间。解:(1)6个盘片共有10个记录面,磁盘存储器的总容量为512B1220410=12533760B(2)磁盘存储器的平均寻址时间:ts+twTs=8mstw=(tmin+tmax)/2=(0+60/7200)/2=4.165ms故平均寻址时间为8ms+4.165ms=12.165ms,注:rpm为转分,即每分钟转数,例4.13一个磁盘组有11片,每片有203道,数据传输率为983040Bps,磁盘组转速为3600rpm.假设每个记录块有1024B,且系统可挂16台这样的磁盘机,计算该磁盘存储器的总容量并设计磁盘地址格式,解(1)由于数据传输速率每一条磁道的容量X磁盘转速,且磁盘转速为3600rpm=60rps,故每一磁道的容量为983040Bps/60rps=16384B(2)根据每个记录块(即扇段)有1024B,故每个磁道有16384B/1024B=16个扇区。(3)磁盘地址格式如下,其中:台号4位,表示有16台磁盘机;磁道号8位,能反映203道;盘面号5位,对应11个盘片共有20个记录面;扇段号4位,对应16个扇段。,注:rps为转秒,即每秒钟转数,例4.14对于一个由6个盘面组成的磁盘存储器,若某个文件长度超过一个磁道的容量,应将它记录在同一个存储面上,还是记录在同一个柱面上?解:如果文件长度超过一个磁道的容量,应将它记录在同一个柱面上,因为不需要重新找道,寻址时间减少,数据读/写速度快,(2)不定长记录格式,不定长记录格式可以根据文件长度需要来决定记录块的长度,如IBM2311盘磁道格式为:,注解:数据区长度不定,由计数区数据长约定;数据串行存储,字节间无间隙也无校验。,4、硬磁盘的发展,(1)半导体盘FlashMemory盘,(2)高密度盘磁头记录密
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 考点攻克苏科版八年级物理下册《物质的物理属性》专项测评练习题(含答案详解)
- 长垣东英学校招生考试卷子及答案
- 初三下册考试试卷及答案
- 难点详解人教版八年级上册物理声现象《声音的特性》定向训练试题(含答案解析版)
- 达标测试苏科版八年级物理下册《物质的物理属性》章节训练试卷(附答案详解)
- 三中进校考试题目及答案
- 全州二中考试卷子及答案
- 2024-2025学年度天津市上册10月考八年级数学试题 参考答案
- 祁阳一中选科考试题及答案
- 2025年《钳工》技师考试练习题(含答案及解析)
- 2025急性心梗诊疗指南
- 2025年天津市专业技术人员继续教育网公需课答案
- 2025年消毒供应室试题500题及答案
- 肠镜检查的准备及心理护理
- 学习通《科研诚信与学术规范》课后及考试答案
- 2025年福建华福证券有限责任公司招聘笔试参考题库含答案解析
- 中国血糖监测临床应用指南
- 《全科医师培训眼科》课件
- 马克思主义科学技术社会论
- DB21T 2732-2017 森林防火技术规程
- 脑卒中溶栓治疗的注意事项
评论
0/150
提交评论