计算机组成原理教案(第三章)_第1页
计算机组成原理教案(第三章)_第2页
计算机组成原理教案(第三章)_第3页
计算机组成原理教案(第三章)_第4页
计算机组成原理教案(第三章)_第5页
已阅读5页,还剩98页未读 继续免费阅读

下载本文档

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

文档简介

第三章存储系统

3.1.1存储器分类存储元:一个双稳态半导体电路或一个CMOS晶体管或磁性材料。存储单元存储器存储器有各种不同的分类方法

★按存储介质分半导体存储器:用半导体器件组成的存储器。磁表面存储器:用磁性材料做成的存储器★按存储方式分

随机存储器:任何存储单元的内容都能被随机存取,且存取时间和存储单元的物理位置无关。

顺序存储器:只能按某种顺序来存取,存取时间和存储单元的物理位置有关。★按存储器的读写功能分

只读存储器(ROM):存储的内容是固定不变的,只能读出而不能写入的半导体存储器。

随机读写存储器(RAM):既能读出又能写入的半导体存储器。★按信息的可保存性分

非永久记忆的存储器:断电后信息即消失的存储器。永久记忆性存储器:断电后仍能保存信息的存储器。★按在计算机系统中的作用分

根据存储器在计算机系统中所起的作用,可分为主存储器、辅助存储器、高速缓冲存储器、控制存储器等。3.1.2存储器的分级结构CAI演示

3.1.3主存储器的技术指标字存储单元字地址和字节地址主存储器的主要几项技术指标

指标

含义

表现

单位存储容量在一个存储器中可以容纳的存储单元总数存储空间的大小字数,字节数存取时间启动到完成一次存储器操作所经历的时间主存的速度ns存储周期连续启动两次操作所需间隔的最小时间主存的速度ns存储器带宽单位时间里存储器所存取的信息量,数据传输速率技术指标位/秒,字节/秒3.2.1SRAM存储器1.基本存储元六管SRAM存储元的电路图及读写操作图2.SRAM存储器的组成SRAM存储器的组成框图存储器对外呈现三组信号线,即地址线、数据线、读/写控制线

地址译码器:单译码和双译码

3.SRAM存储器芯片实例2114存储器芯片的逻辑结构方框图由于读操作与写操作是分时进行的,读时不写,写时不读,因此,输入三态门与输出三态门是互锁的,数据总线上的信息不致于造成混乱。4.存储器与CPU连接(2)存储器速度与容量的解决存储器芯片的容量是有限的,为了满足实际存储器的容量要求,需要对存储器进行扩展。主要方法有:(1)工作原理★位扩展法:只加大字长,而存储器的字数与存储器芯片字数一致,对片子没有选片要求.例:使用8K×1的RAM存储器芯片,组成8K×8位的存储器★字扩展法:仅在字向扩充,而位数不变.需由片选信号来区分各片地址。

例:

用16K×8位的芯片采用字扩展法组成64K×8位的存储器★字位同时扩展法5.存储器的读、写周期

例1】下图是SRAM的写入时序图。其中R/W是读/写命令控制线,当R/W线为低电平时,存储器按给定地址把数据线上的数据写入存储器。请指出下图写入时序中的错误,并画出正确的写入时序图3.2.2DRAM存储器1.四管动态存储元四管的动态存储电路是将六管静态存储元电路中的负载管T3,T4去掉而成的2.单管动态存储元单管存储元电路和四管存储元电路对比

名称

优点

缺点四管存储元电路外围电路比较简单,刷新时不需要另加外部逻辑管子多,占用的芯片面积大单管存储元电路元件数量少,集成度高需要有高鉴别能力的读出放大器配合工作外围电路比较复杂。3.DRAM存储芯片实例下图是16K×1位的DRAM存储器片2116的逻辑结构示意图。读写周期时序图P824.DRAM的刷新动态MOS存储器采用“读出”方式进行刷新。从上一次对整个存储器刷新结束到下一次对整个存储器全部刷新一遍为止,这一段时间间隔叫刷新周期。常用的刷新方式有三种,一种是集中式另一种是分散式第三种是异步式集中式

分散刷新方式异步式刷新方式是前两种方式的结合刷新周期为2ms,完成128行的所有存储元刷新则需要2000us/128=15.5us标准的刷新方式两种1、只用RAS信号的刷新2、CAS在RAS之前的刷新【例2】说明1M×1位DRAM片子的刷新方法,刷新周期定为8ms如果选择一个行地址进行刷新,刷新地址为A0—A8,因此这一行上的2048个存储元同时进行刷新,即在8ms内进行512个周期的刷新。按照这个周期数,512×2048=1048567,即对1M位的存储元全部进行刷新。刷新方式可采用:在8ms中进行512次刷新操作的集中刷新方式,或按8ms÷512=15.5μs刷新一次的异步刷新方式。5.存储器控制电路DRAM存储器的刷新需要有硬件电路的支持,包括刷新计数器、刷新/访存裁决、刷新控制逻辑等。这些控制线路形成DRAM控制器,它将CPU的信号变换成适合DRAM片子的信号。3.2.3主存储器组成实例W4006AF构成的80386主存储器简图(1)W4006AF的外特性

可以控制两个存储体交叉访问;

可以对256KB—16MB的DRAM片子进行访问;

最多可控制128个DRAM片子;

采用CAS在RAS之前的刷新方式。(2)主存储器组成有4个存储模块,每个模块存储容量为1M×32位3.2.4高性能的主存储器1.EDRAM芯片

EDRAM芯片又称增强型DRAM芯片,它在DRAM芯片上集成了一个SRAM实现的小容量高速缓冲存储器,从而使DRAM芯片的性能得到显著改进。1M×4位EDRAM芯片的结构框图以SRAM保存一行内容的办法,对成块传送非常有利。如果连续的地址高11位相同,意味着属于同一行地址,那么连续变动的9位列地址就会使SRAM中相应位组连续读出,这称为猝发式读取。

EDRAM的这种结构还带来另外两个优点:

●在SRAM读出期间可同时对DRAM阵列进行刷新。

●芯片内的数据输出路径与输入路径是分开的,允许在写操作完成的同时来启动同一行的读操作。2.EDRAM内存条一片EDRAM的容量为1M×4位,8片这样的芯片可组成1M×32位的存储模块。8个芯片共用片选信号Sel、行选通信号RAS、刷新信号Ref和地址输入信号A0—A10。3.主存物理地址的存储空间分布以奔腾PC机主存为例,说明主存物理地址的存储空间概念3.3.1只读存储器1.ROM的分类只读存储器简称ROM,它只能读出,不能写入。它的最大优点是具有不易失性。

根据编程方式不同,ROM通常分为三类:只读存储器定义优点缺点

掩模式数据在芯片制造过程中就确定可靠性和集成度高,价格便宜不能重写一次编程用户可自行改变产品中某些存储元可以根据用户需要编程只能一次性改写多次编程可以用紫外光照射或电擦除原来的数据,然后再重新写入新的数据可以多次改写ROM中的内容2.光擦可编程只读存储器(EPROM)(1)EPROM基本存储元电路(2)EPROM实例-2716的内部结构图工作模式选择

PD/PGM

CS

Vpp

Vcc数据输出读低低+5V+5V输出未选中无关高+5V+5V高阻功率下降高无关+5V+5V高阻编程由低到高脉冲高+25V+5V输入例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的连接,说明选哪些存储器芯片,选多少片。主存地址空间分布如图所示。

3.3.2闪速存储器1.什么是闪速存储器闪速存储器是一种高密度、非易失性的读/写半导体存储器2.闪速存储器的逻辑结构28F256A的逻辑方框图3.闪速存储器的工作原理闪速存储器是在EPROM功能基础上增加了电路的电擦除和重新编程能力。28F256A引入一个指令寄存器来实现这种功能。其作用是:

(1)保证TTL电平的控制信号输入;(2)在擦除和编程过程中稳定供电;(3)最大限度的与EPROM兼容。当VPP引脚不加高电压时,它只是一个只读存储器。当VPP引脚加上高电压时,除实现EPROM通常操作外,通过指令寄存器,可以实现存储器内容的变更。当VPP=VPPL时,指令寄存器的内容为读指令,使28F256A成为只读存储器,称为写保护。4。闪速存储器的工作模式P97表3.428F256A工作模式

读操作:片选信号CE是供电控制端,输出允许信号OE用于控制数据从输出引脚的输出。只有这两个信号同时有效时,才能实现数据输出。

输出禁止操作:当输出允许控制端OE处于高电平时,28F256A被禁止输出,输出引脚置于高阻状态。

等待操作:当片选信号CE处于逻辑高电平时,等待操作抑制了28F256A的大部分电路,减少器件功耗。

写操作:当VPP为高电压时,通过指令寄存器实现器件的擦除和编程。当CE=0且WE=0时,通过写周期对指令寄存器进行写入5.闪速存储器与CPU的连接CPU与闪速存储器进行连接的逻辑框图3.4

高速存储器3.4.1双端口存储器1.双端口存储器的逻辑结构

双端口存储器是指同一个存储器具有两组相互独立的读写控制线路,是一种高速工作的存储器。2K×16位双端口存储器IDT7133的逻辑功能方框图2.无冲突读写控制

P99表3.8无冲突读写控制3.有冲突的读写控制

1.CE判断:如果地址匹配且在CE之前有效,片上的控制逻辑在CEL和CER之间进行判断来选择端口。

2.地址有效判断:如果CE在地址匹配之前变低,片上的控制逻辑在左、右地址间进行判断来选择端口。表3.9左、右端口读写操作的功能判断3.4.2多模块交叉存储器1.存储器的模块化组织个由若干个模块组成的主存储器是线性编址,这些地址在各模块有两种安排方式:一种是顺序方式,一种是交叉方式。如图演示2.多模块交叉存储器的基本结构四模块交叉存储器结构框图我们认为模块字长等于数据总线宽度,模块存取一个字的存储周期为T,总线传送周期为τ,存储器的交叉模块数为m,为了实现流水线方式存取,应当满足

T=mτ

(m=T/τ称为交叉存取度)交叉存储器要求其模块数必须大于或等于m,以保证启动某模块后经mτ时间再次启动该模块时,它的上次存取操作已经完成。这样,连续读取m个字所需的时间为t1=T+(m-1)τ

m=4的流水线方式存取示意图如下而顺序方式存储器连续读取m个字所需时间为t2=mT.【例4】设存储器容量为32字,字长64位,模块数m=4,分别用顺序方式和交叉方式进行组织。存储周期T=200ns,数据总线宽度为64位,总线传送周期τ=50ns。问顺序存储器和交叉存储器的带宽各是多少?顺序存储器和交叉存储器连续读出4个字所需的时间分别是:

t2=mT=4×200ns=800ns=8×10-7s;t1=T+(m-1)=200ns+3×50ns=350ns=3.5×10-7s顺序存储器和交叉存储器连续读出m=4个字的信息总量都是:q=64位×4=256位顺序存储器和交叉存储器的带宽分别是:

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

W1=q/t1=256÷(3.5×10-7)=73×107[位/s]3.二模块交叉存储器举例DRAM芯片二模块交叉存储器方框图无等待状态成块存取示意图3.4.3相联存储器1.相联存储器的基本原理相联存储器是指其中任一存储项内容作为地址来存取的存储器。选用来寻址存储器的子段叫做关键字。存放在相联存储器中的项可以看成具有KEY,DATA这样的格式。其中KEY是地址,DATA是被读写信息。2.相联存储器的组成相联存储器框图在计算机系统中,相联存储器主要用于虚拟存储器中存放分段表、页表和快表;在高速缓冲存储器中,相联存储器作为存放cache的行地址之用。这是因为,在这两种应用中,都需要快速查找。3.5

cache存储器3.5.1cache基本原理1.cache的功能2.cache的基本原理3.cache的命中率Nc表示cache完成存取的总次数,Nm表示主存完成存取的总次数,h定义为命中率,则有

若tc表示命中时的cache访问时间,tm表示未命中时的主存访问时间,1-h表示未命中率,则cache/主存系统的平均访问时间ta为:

ta=htc+(1-h)tm

(3.5)设r表示主存慢于cache的倍率,e表示访问效率,则有:

r=tm/tc

(3.6)

为提高访问效率,命中率h越接近1越好,r值以5—10为宜,不宜太大。命中率h与程序的行为、cache的容量、组织方式、块的大小有关。【例5】CPU执行一段程序时,cache完成存取的次数为1900次,主存完成存取的次数为100次,已知cache存取周期为50ns,主存存取周期为250ns,求cache/主存系统的效率和平均访问时间。h=Nc/(Nc+Nm)=1900/(1900+100)=0.95r=tm/tc=250ns/50ns=5e=1/(r+(1-r)h)=1/(5+(1-5)×0.95)=83.3%ta=tc/e=50ns/0.833=60ns3.5.2.主存与cache的地址映射映射方式有全相联方式、直接方式和组相联方式三种1.全相联映射方式

这种方法可使主存的一个块直接拷贝到cache中的任意一行上,非常灵活。它的主要缺点是比较器电路难于设计和实现,因此只适合于小容量cache采用。2.直接映射方式直接映射方式的优点是硬件简单,成本低。缺点是每个主存块只有一个固定的行位置可存放,容易产生冲突。因此适合大容量cache采用。3.组相联映射方式组相联映射方式中的每组行数v一般取值较小,这种规模的v路比较器容易设计和实现。而块在组中的排放又有一定的灵活性,冲突减少。3.5.3.替换策略对直接映射的cache来说,只要把此特定位置上的原主存块换cache即可。对全相联和组相联cache来说,就要从允许存放新主存块的若干特定行中选取一行换出★最不经常使用(LFU)算法LFU算法将一段时间内被访问次数最少的那行数据换出。每行设置一个计数器。从0开始计数,每访问一次,被访行的计数器增1。当需要替换时,将计数值最小的行换出,同时将这些行的计数器都清零。

这种算法将计数周期限定在对这些特定行两次替换之间的间隔时间内,不能严格反映近期访问情况。★近期最少使用(LRU)算法

LRU算法将近期内长久未被访问过的行换出。每行也设置一个计数器,cache每命中一次,命中行计数器清零,其它各行计数器增1。当需要替换时,将计数值最大的行换出。这种算法保护了刚拷贝到cache中的新数据行,有较高的命中率。★随机替换

随机替换策略从特定的行位置中随机地选取一行换出。在硬件上容易实现,且速度也比前两种策略快。缺点是降低了命中率和cache工作效率。3.5.4cache的写操作策略CPU对cache的写入更改了cache的内容。可选用写操作策略使cache内容和主存内容保持一致。★写回法当CPU写cache命中时,只修改cache的内容,而不立即写入主存;只有当此行被换出时才写回主存。当CPU写cache未命中时

这种方法减少了访问主存的次数,但是存在不一致性的隐患。

实现这种方法时,每个cache行必须配置一个修改位,以反映此行是否被CPU修改过。★全写法

当写cache命中时,cache与主存同时发生写修改,因而较好地维护了cache与主存的内容的一致性。当写cache未命中时,直接向主存进行写入(2方法)。cache中每行无需设置一个修改位以及相应的判断逻辑。缺点是降低了cache的功效。★写一次法

基于写回法并结合全写法的写策略,写命中与写未命中的处理方法与写回法基本相同,只是第一次写命中时要同时写入主存。这便于维护系统全部cache的一致性。3.5.5奔腾PC机的cache奔腾PC机采用两级cache结构。安装在主板上的2级cache(L2)采用2路组相联映射方式,集成在CPU内的1级cache(L1)也采用2路组相联映射方式.奔腾PC机的cache工作环境数据cache采用2路组相联结P113图3。40L2级cache采用的是写回法,L1级数据cache采用的是写一次法。为了维护cache的一致性,L1和L2均采用MESI协议,即要求每个cache行有两个状态位,用以描述该行当前是处于修改态、专有态、共享态或者无效态中的哪种状态,从而决定对它的读/写操作行为。3.6.1虚拟存储器的基本概念1.什么是虚拟存储器虚拟存储器只是一个容量非常大的存储器的逻辑模型,不是任何实际的物理存储器。它借助于磁盘等辅助存储器来扩大主存容量,使之为更大或更多的程序所使用。它指的是主存-外存层次。以透明的方式给用户提供了一个比实际主存空间大得多的程序地址空间。物理地址和虚拟地址主存-外存层次和cache-主存层次用的地址变换映射方法和替换策略是相同的:①把程序中最近常用的部分驻留在高速的存储器中。②一旦这部分变得不常用了,把它们送回到低速的存储器中。③这种换入换出是由硬件或操作系统完成的,对用户是透明的。④力图使存储系统的性能接近高速存储器,价格接近低速存储器。区别:在虚拟存储器中未命中的性能损失要远大于cache系统中未命中的损失2.主存-外存层次的基本信息传送单位主存-外存层次的基本信息传送单位可采用几种不同的方案:段、页或段页。段是按照程序的逻辑结构划分成的多个相对独立部分,作为独立的逻辑单位。段优点是段的逻辑独立性使它易于编译、管理、修改和保护,也便于多道程序共享;某些类型的段具有动态可变长度,允许自由调度以便有效利用主存空间。缺点是因为段的长度各不相同,起点和终点不定,给主存空间分配带来麻烦,而且容易在段间留下许多空余的零碎存储空间,造成浪费。页是主存物理空间中划分出来的等长的固定区域。页优点是页面的起点和终点地址是固定的,方便造页表,新页调入主存也很容易掌握,比段式空间浪费小。缺点是处理、保护和共享都不及段式来得方便。段页式管理采用分段和分页结合的方法。段页式程序按模块分段,段内再分页,进入主存以页为基本信息传送单位,用段表和页表进行两级定位管理。3.6.2页式虚拟存储器页式管理的地址变换快表与慢表实现内部地址变换的方式3.6.3段式虚拟存储器虚存地址向实存地址的变换过程3.6.4段页式虚拟存储器在段页式虚拟存储系统中,每道程序是通过一个段表和一组页表来进行定位的。段表中的每个表目对应一个段,每个表目有一个指向该段的页表起始地址及该段的控制保护信息。由页表指明该段各页在主存中的位置以及是否已装入、已修改等状态信息。如果有多个用户在机器上运行多道程序的每一道需要一个基号,由它指明该道程序的段表起始地址。虚拟地址格式如下:基号段号页号页内地址【例6】假设有三道程序(用户标志号为A,B,C),其基址寄存器内容分别为SA,SB,SC,逻辑地址到物理地址变换过程3.6.5替换算法虚拟存储器中的替换策略一般采用LRU算法、LFU算法FIFO算法,或将两种算法结合起来使用对于将被替换出去的页面,假如该页调入主存后没有被修改,就不必进行处理,否则就把该页重新写入外存,以保证外存中数据的正确性。为此,在页表的每一行应设置一修改位。【例7】假设主存只有a,b,c三个页框,组成a进c出的FIFO队列,进程访问页面的序列是0,1,2,4,2,3,0,2,1,3,2号。若采用①FIFO算法,②FIFO算法+LRU算法,用列表法分别求两种替换策略情况下的命中率。

页面访问序列0124

230

213

2命中率FIFO算法

a012443021332/11=18.2%

b0122430211

c

温馨提示

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

评论

0/150

提交评论