第四章内存储器接口的基本技术_第1页
第四章内存储器接口的基本技术_第2页
第四章内存储器接口的基本技术_第3页
第四章内存储器接口的基本技术_第4页
第四章内存储器接口的基本技术_第5页
已阅读5页,还剩176页未读 继续免费阅读

下载本文档

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

文档简介

1、第四章第四章 内存储器接口的基本技术内存储器接口的基本技术4 41 1 存储器分类存储器分类4 42 2 随机存取存储器随机存取存储器RAMRAM4 43 3 只读存储器只读存储器ROMROM4 44 CPU4 CPU与存储器的连接与存储器的连接4 45 5 典型的半导体芯片举例典型的半导体芯片举例 4 41 1 存储器分类存储器分类u存储器是计算机存储器是计算机( (包括微机包括微机) )硬件系统的重要组成部分硬件系统的重要组成部分u有了存储器,计算机才具有有了存储器,计算机才具有“记忆记忆”功能功能u才能把程序及数据的代码保存起来才能把程序及数据的代码保存起来u才能使计算机系统脱离人的干预

2、才能使计算机系统脱离人的干预u而自动完成信息处理的功能而自动完成信息处理的功能一、按用途分类一、按用途分类内部存储器、外部存储器内部存储器、外部存储器1 1、内部存储器、内部存储器 也称内存,是主存储器,位于主机内部,存放当前正在使用或经常使也称内存,是主存储器,位于主机内部,存放当前正在使用或经常使用的程序和数据,可供用的程序和数据,可供CPUCPU直接访问。一般由半导体存储器件构成。直接访问。一般由半导体存储器件构成。特点:存取速度较快特点:存取速度较快; ;容量大小受到地址总线位数的限制容量大小受到地址总线位数的限制80868086系统是系统是2020条地址总线,可寻址内存空间为条地址总

3、线,可寻址内存空间为1MB1MB8038680386系统是系统是3232条地址总线,可寻址内存空间为条地址总线,可寻址内存空间为4GB4GBPP以上系统是以上系统是3636条地址总线,可寻址内存空间为条地址总线,可寻址内存空间为64GB64GB存放系统软件(系统引导程序、监控程序或操作系统的存放系统软件(系统引导程序、监控程序或操作系统的BIOSBIOS)和当前要)和当前要运行的应用程序运行的应用程序2 2、外部存储器、外部存储器 也称外存,是辅助存储器,一般由磁表面存储器件构成。也称外存,是辅助存储器,一般由磁表面存储器件构成。特点:存取速度较慢特点:存取速度较慢; ;存储容量大,要由专用的

4、设备来管理,配存储容量大,要由专用的设备来管理,配置专门的驱动设备才能访问外存置专门的驱动设备才能访问外存( (软盘驱动器、硬盘驱动器、软盘驱动器、硬盘驱动器、光盘驱动器等光盘驱动器等) )微机中常见的外存有:软盘、硬盘、光盘、微缩胶片等微机中常见的外存有:软盘、硬盘、光盘、微缩胶片等计算机启动一般由内存计算机启动一般由内存ROMROM中的引导程序启动系统,再从外存中中的引导程序启动系统,再从外存中读取系统程序和应用程序,送到内存的读取系统程序和应用程序,送到内存的RAMRAM,程序运行的中间,程序运行的中间结果放在结果放在RAMRAM中,程序运行结束时将最后结果存入外存。中,程序运行结束时将

5、最后结果存入外存。二、按存储器性质分类二、按存储器性质分类只读存储器只读存储器(ROM)(ROM)、随机存储器、随机存储器(RAM)(RAM)。(1 1)随机存取存储器)随机存取存储器RAMRAM(Random Access MemoryRandom Access Memory):):RAMRAM中中的任意一个存的任意一个存储单元都可被随机读写,且存取时间与存储单元的物理位置无关,读写储单元都可被随机读写,且存取时间与存储单元的物理位置无关,读写速度较快。速度较快。RAMRAM主要用来存放输入、输出数据及中间结果并与外存储器交主要用来存放输入、输出数据及中间结果并与外存储器交换信息。换信息。

6、RAMRAM可分为两种:可分为两种: SRAM SRAM静态静态RAMRAM(Static RAMStatic RAM) 速度非常快,有电存储的内容不会消失,集成度较低(速度非常快,有电存储的内容不会消失,集成度较低(6 6各各MOSMOS管组成管组成1 1位),功耗较大。一般是构成高速缓冲存储器(位),功耗较大。一般是构成高速缓冲存储器(Cache memoryCache memory)存储器)存储器件。件。 DRAMDRAM的运行速度比的运行速度比SRAMSRAM慢慢2 25 5倍。一般倍。一般PCPC机的标准存储器都由机的标准存储器都由DRAMDRAM组成组成 DRAM DRAM动态动态

7、RAMRAM(Dynamic RAMDynamic RAM) 必须周期性的在内容消失之前刷新(必须周期性的在内容消失之前刷新(RefreshRefresh)(DRAM(DRAM的内容会在的内容会在10103 3或或10106 6秒后消失秒后消失) ) 基本存储电路由一个晶体管和一个电容构成,集成度高,功耗小,成本基本存储电路由一个晶体管和一个电容构成,集成度高,功耗小,成本低,但需一个额外的刷新电路低,但需一个额外的刷新电路 DRAMDRAM的运行速度比的运行速度比SRAMSRAM慢慢2 25 5倍。一般倍。一般PCPC机的标准存储器都由机的标准存储器都由DRAMDRAM组成组成(2 2)只读

8、存储器)只读存储器ROM(ReadROM(Read Only Memory) Only Memory):ROMROM中所存储的内容是固定中所存储的内容是固定不变的,即只能读出不能写入。不变的,即只能读出不能写入。ROMROM一般用来存放微机的系统管理程一般用来存放微机的系统管理程序、监控程序等。序、监控程序等。 ROMROM按集成电路内部结构不同,可分为三种:按集成电路内部结构不同,可分为三种: PROMPROM可编程的可编程的ROMROM(ProgramableProgramable ROM ROM) 将设计的程序固化进去后,将设计的程序固化进去后,ROMROM内容不可更改内容不可更改 EP

9、ROMEPROM可擦除、可编程的可擦除、可编程的ROMROM(Erasable PROMErasable PROM)可编程固化程序,但可通过紫外光照擦除固化程序,以便重新固化程序可编程固化程序,但可通过紫外光照擦除固化程序,以便重新固化程序 EEPROMEEPROM电可擦除可编程的电可擦除可编程的ROMROM(Electrically Erasable PROMElectrically Erasable PROM) 可编程固化程序,但可用电擦除固化程序,以便重新固化程序可编程固化程序,但可用电擦除固化程序,以便重新固化程序图图 存储器的分类存储器的分类其中,光盘不是磁表面存储器件其中,光盘不是

10、磁表面存储器件内部存储器内部存储器(半导体存储器)(半导体存储器) RAM ROM SRAM(静态(静态RAM) DRAM(动态(动态RAM)PROMEPROMEEPROM外部存储器外部存储器(磁表面存储器)(磁表面存储器)硬盘硬盘软盘软盘磁带磁带光盘光盘存储器存储器三、三、 存储器的体系结构存储器的体系结构1. 1. 存储体系的组成存储体系的组成 计算机对计算机对存储器的基本要求是容量大、速度快和成本低,存储器的基本要求是容量大、速度快和成本低,尽量少出尽量少出错,平均无故障间隔时间要长。错,平均无故障间隔时间要长。三、三、 存储器的体系结构存储器的体系结构1. 1. 存储体系的组成存储体系

11、的组成 要想在一个存储器中同时兼顾这些指标是很困难的,为了要想在一个存储器中同时兼顾这些指标是很困难的,为了解决存储器的容量、速度和价格之间的矛盾,人们除了不断研解决存储器的容量、速度和价格之间的矛盾,人们除了不断研制新的存储器件和改进存储性能外,还从存储系统体系上研究制新的存储器件和改进存储性能外,还从存储系统体系上研究合理的结构模式。合理的结构模式。把多种类型的存储器有机地组成存储体系,可以如图所示。把多种类型的存储器有机地组成存储体系,可以如图所示。 CPU工作寄存器内存外存0级存储器1级存储器2级存储器容量 大速度慢价格低调用方向间接直接保存方向 非易失易失CPUM0M2M1 图 存储

12、体系的组成 2. 2. 存储系统的多级层次结构存储系统的多级层次结构把各种不同存储容量、存取速度和价格的存储器按层次结构组成多层存储器,并通过管理软件和辅助硬件有机组合成统一的整体,使所存放的程序和数据按层次分布在各种存储器中,形成存储系统的多级层次结构。2. 2. 存储系统的多级层次结构存储系统的多级层次结构在计算机系统中通常采用三级层次结构来构成存储系统,主要由高速缓冲存储器Cache、主存储器和辅助存储器组成,如图4-2所示。 CPU 高速缓存 主存储器 I/O 控制电路 高速缓存 辅存 磁盘 光盘 磁带 图 存储系统的多级层次结构 四、四、 主要性能指标主要性能指标存储器的主要性能指标

13、反映了计算机对它们的要求,存储器系统的三项主要性能指标要求是【容量】、【速度】和【可靠性】 四、四、 主要性能指标主要性能指标1. 1. 存储容量存储容量是指存储器可以存储的二进制信息总量,是存储器系统的首要性能指标,因为存储容量越大,则系统能够保存的信息量就越多,相应计算机系统的功能就越强。 四、四、 主要性能指标主要性能指标1. 1. 存储容量存储容量目前使用的存储容量达MB(兆字节)、GB(千兆字节)、TB(兆兆字节)或更大的存储空间。存储容量通常以字节(Byte)为单位来表示,各层次之间的换算关系为: 1KB=210B=1024B;1MB=220B=1024KB; 1GB=230B=1

14、024MB;1TB=240B=1024GB 2. 2. 存取速度存取速度直接决定了整个微机系统的运行速度,因此,存取速度也是存储器系统的重要的性能指标;存储器的存取速度可以用存取时间和存取周期来衡量。(1)存取时间:是指完成一次存储器读/写操作所需要的时间,故又称读写时间。具体是指从存储器接收到寻址地址开始,到取出或存入数据为止所需要的时间。 (2)存取周期:是连续进行读/写操作的所需的最小时间间隔。当CPU采用同步时序控制方式时,对存储器读、操作的时间安排,应不小于读取和写入周期中的最大值。这个值也确定了存储器总线传输时的最高速率。 3、存储器可靠性:也是存储器系统的重要性能指标。通常用平均

15、故障间隔时间来衡量。 为了在存储器系统中兼顾以上三个方面的指标,目前在计算机系统中通常采用三级存储器结构,即使用高速缓冲存储器、主存储器和辅助存储器,由这三者构成一个统一的存储系统。从整体看,其速度接近高速缓存的速度,其容量接近辅存的容量,而其成本则接近廉价慢速的辅存平均价格。 52 随机存储器(Random Access Memory,RAM):在微机系统的工作过程中,可以随机地对其中的各个存储单元进行读写操作。 半导体存储器RAMROMSRAMDRAM掩膜ROMPROMEPROMEEPROMFlash ROM一、静态随机存储器(Static RAM,SRAM) SRAM其存储电路是以双稳态

16、触发器为基础,只要不掉电,信息永不会丢失,不需要刷新电路。SRAM的主要性能是:存取速度快、功耗较大、容量较小。它一般适用于构成高速缓冲存储器(Cache)。 VCC(+5V)T3T2T1T4VCCT3T1T4T2X地址译码线ABD0D0T5T6T7T8(I/O)I/O接Y地址译码器AB图5-1(a)图5-1(b)1.静态RAM的构成 基本存储单元静态RAM的基本存储单元是由两个增强型的NM0S反相器交叉耦合而成的触发器,每个基本的存储单元由六个MOS管构成,所以,静态存储电路又称为六管静态存储电路。图图5-1(a)5-1(a)为六管静态存储单元的原理示意图。其中为六管静态存储单元的原理示意图

17、。其中T1T1、T2T2为控制管,为控制管,T3T3、T4T4为负载管。这个电路具有两个相对的稳态状态,若为负载管。这个电路具有两个相对的稳态状态,若TlTl管截管截止则止则A A“l”(l”(高电平高电平) ),它使,它使T2T2管开启,于是管开启,于是B B“0”(0”(低电平低电平) ),而而B B“0”0”又进一步保证了又进一步保证了T1T1管的截止。所以,这种状态在没有管的截止。所以,这种状态在没有外触发的条件下是稳定不变的。外触发的条件下是稳定不变的。同样,同样,T1T1管导通即管导通即A A“0”(0”(低电平低电平) ),T2T2管截止即管截止即B B“1”(1”(高电高电平平

18、) )的状态也是稳定的。因此,可以用这个电路的两个相对稳定的状态也是稳定的。因此,可以用这个电路的两个相对稳定的状态来分别表示逻辑的状态来分别表示逻辑“1”1”和逻辑和逻辑“0”0”。当把触发器作为存储电路时,就要使其能够接收外界来的触发控制信号,用当把触发器作为存储电路时,就要使其能够接收外界来的触发控制信号,用以读出或改变该存储单元的状态,这样就形成了如图以读出或改变该存储单元的状态,这样就形成了如图5-l(b)5-l(b)所示的六管所示的六管基本存储电路。其中基本存储电路。其中T5T5、T6T6为门控管。为门控管。当当X X译码输出线为高电平时,译码输出线为高电平时,T5T5、T6T6管

19、导通,管导通,A A、B B端就分别与位线端就分别与位线D0D0及及D0D0相相连;若相应的连;若相应的Y Y译码输出也是高电平,则译码输出也是高电平,则T7T7、T8T8管管( (它们是一列公用的,它们是一列公用的,不属于某一个存储单元不属于某一个存储单元) )也是导通的,于是也是导通的,于是D0D0及及D0(D0(这是存储单元内部的这是存储单元内部的位线位线) )就与输入就与输入/ /输出电路的输出电路的I/OI/O线及线及I/OI/O线相通。线相通。写入操作:写入信号自I/O线及I/O线输入,如要写入“1”,则I/O线为高电平而I/O线为低电平,它们通过T7、T8管和T5、T6管分别与A

20、端和B端相连,使A=“1”,B=“0”,即强迫T2管导通,Tl管截止,相当于把输入电荷存储于Tl和T2管的栅级。当输入信号及地址选择信号消失之后,T5、T6、T7、T8都截止。由于存储单元有电源及负载管,可以不断地向栅极补充电荷,依靠两个反相器的交叉控制,只要不掉电,就能保持写入的信息“1”,而不用再生(刷新)。若要写入“0”,则I/O线为低电乎而I/O线为高电平,使Tl管导通,T 2管截止即A=“0”,B=“1”。读操作:只要某一单元被选中,相应的T5、T6、T7、T8均导通,A点与B点分别通过T5、T6管与D0及D0相通,D0及D0又进一步通过T7、T8管与I/O及I/O线相通,即将单元的

21、状态传送到I/O及I/O线上。由此可见,这种存储电路的读出过程是非破坏性的,即信息在读出之后,原存储电路的状态不变。3232=1024存储单元驱动器X译码器地址反向器I/O电路Y译码器地址反向器控制电路输出驱动12321232输入输出321231读/写选片1A0A2A3A4A5A6A7A8A9A321231图5-2 存储器芯片的内部结构框图p210n存储器的系统结构存储器的系统结构一般情况下,一个存储器系统由以下几部分组成。一般情况下,一个存储器系统由以下几部分组成。1 1 基本存储单元:基本存储单元: 一个基本存储单元可以存放一位二进制信息,其内一个基本存储单元可以存放一位二进制信息,其内部

22、具有两个稳定的且相互对立的状态,并能够在外部具有两个稳定的且相互对立的状态,并能够在外部对其状态进行识别和改变。部对其状态进行识别和改变。 不同类型的基本存储单元,决定了由其所组成的存不同类型的基本存储单元,决定了由其所组成的存储器件的类型不同。储器件的类型不同。 n存储器的系统结构存储器的系统结构2 2 存储体:存储体:一个基本存储单元只能保存一位二进制信息,若要存放一个基本存储单元只能保存一位二进制信息,若要存放M MN N个二进制信息,就需要用个二进制信息,就需要用M MN N个基本存储单元,它们按一个基本存储单元,它们按一定的规则排列起来,由这些基本存储单元所构成的阵列称为存定的规则排

23、列起来,由这些基本存储单元所构成的阵列称为存储体或存储矩阵。储体或存储矩阵。3 3 地址译码器:地址译码器:由于存储器系统是由许多存储单元构成的,每个存储单元一般存由于存储器系统是由许多存储单元构成的,每个存储单元一般存放放8 8位二进制信息,为了加以区分,必须首先为这些存储单元编号,位二进制信息,为了加以区分,必须首先为这些存储单元编号,即分配给这些存储单元不同的地址。即分配给这些存储单元不同的地址。地址译码器的作用就是用来接受地址译码器的作用就是用来接受CPUCPU送来的地址信号并对它进行送来的地址信号并对它进行译码,选择与此地址码相对应的存储单元,以便对该单元进行读译码,选择与此地址码相

24、对应的存储单元,以便对该单元进行读/ /写操作。写操作。3 3 地址译码器地址译码器存储器地址译码有两种方式,通常称为单译码与双译码。存储器地址译码有两种方式,通常称为单译码与双译码。单译码:单译码:单译码方式又称字结构,适用于小容量存储器。单译码方式又称字结构,适用于小容量存储器。双译码:双译码:双译码结构中,将地址译码器分成两部分,即行译码器双译码结构中,将地址译码器分成两部分,即行译码器( (又叫又叫X X译码器译码器) )和列译码器和列译码器( (又叫又叫Y Y译码器译码器) )。X X译码器输出行地址译码器输出行地址选择信号,选择信号,Y Y译码器输出列地址选择信号,行列选择线交叉处

25、即译码器输出列地址选择信号,行列选择线交叉处即为所选中的单元。为所选中的单元。4. 片选与读/写控制电路:片选信号用以实现芯片的选择。对于一个芯片来讲,只有当片选信号有效时,才能对其进行读/写操作。片选信号一般由地址译码器的输出及一些控制信号来形成,而读/写控制电路则用来控制对芯片的读/写操作。 5 I/O电路:I/O电路位于系统数据总线与被选中的存储单元之间,用来控制信息的读出与写入,必要时,还可包含对I/O信号的驱动及放大处理功能。 6 集电极开路或三态输出缓冲器:为了扩充存储器系统的容量,常常需要将几片RAM芯片的数据线并联使用或与双向的数据线相连,这就要用到集电极开路或三态输出缓冲器。

26、 7 其它外围电路:对不同类型的存储器系统,有时,还专门需要一些特殊的外围电路,如动态RAM中的预充电及刷新操作控制电路等,这也是存储器系统的重要组成部分。 nSRAM芯片61166116芯片的容量为2 K8 bit,有2048个存储单元,需11根地址线,7根用于行地址译码输入,4根用于列译码地址输入,每条列线控制8位,从而形成了128128个存储阵列,即16 384个存储体。6116的控制线有三条,片选CS、输出允许OE和读写控制WE。A71A62A53A44A35A26A17A08D09D110D211GND12242322212019181716151413VCCA8A9WEOEA10C

27、SD7D6D5D4D3行译码128128存储矩阵A10A4列I/O列译码输入数据控制逻辑D7D0CSWEOEA3A0nSRAM芯片6116nIntel 6116存储器芯片的工作过程如下: 读出时,地址输入线A10A0送来的地址信号经地址译码器送到行、列地址译码器,经译码后选中一个存储单元(其中有8个存储位),由CS、OE、WE构成读出逻辑(CS=0,OE=0,WE=1),打开右面的8个三态门,被选中单元的8位数据经I/O电路和三态门送到D7D0输出。 nSRAM芯片6116nIntel 6116存储器芯片的工作过程如下: 写入时,地址选中某一存储单元的方法和读出时相同,不过这时CS=0,OE=

28、1,WE=0,打开左边的三态门,从D7D0端输入的数据经三态门和输入数据控制电路送到I/O电路,从而写到存储单元的8个存储位中。当没有读写操作时,CS=1,即片选处于无效状态,输入输出三态门至高阻状态,从而使存储器芯片与系统总线“脱离”。 6116的存取时间在85150 ns之间。. 静态RAM存储器芯片Intel 2114Intel 2114是一种1K4的静态RAM存储器芯片,其最基本的存储单元就是如上所述的六管存储电路,其它的典型芯片有Ietel 6264/62256等。 芯片的内部结构如图5-2所示,它包括下列几个主要组成部分:图5-3 Intel2114静态存储器芯片的内部结构框图 存

29、储矩阵:Intel2114内部共有4096个存储电路,排成6464的短阵形式; 地址译码器:输入为10根线,采用两级译码方式,其中6根用于行译码,4根用于列译码; I/O控制电路:分为输入数据控制电路和列IO电路,用于对信息的输入输出进行缓冲和控制; 片选及读写控制电路:用于实现对芯片的选择及读写控制。(2)Intel 2114的外部结构Intel2114RAM存储器芯片为双列直插式集成电路芯片,共有18个引脚,引脚图如图5-3所示,各引脚的功能如下: A0-A9 A0-A9:10根地址信号输入引脚。123456789181716151413121110A1A2A3A4A5A6A0CSGNDV

30、CCA7A8A9I/O1I/O2I/O3I/O4WE引脚图 图5-3 Intel 2114引脚图 WE : 读写控制信号输入引脚,当WE为低电平时,使输入三态门导通,信息由数据总线通过输入数据控制电路写入被选中的存储单元;反之从所选中的存储单元读出信息送到数据总线。 I/O1-I/O4 I/O1-I/O4 :4根数据输入输出信号引脚 CS CS :低电平有效,通常接地址译码器的输出端。 +5V +5V:电源。 GND GND:地。2、动态随机存取存储器DRAM 动态RAM基本存储单元静态RAM的基本存储单元是一个RS触发器,因此,其状态是稳定的,但由于每个基本存储单元需由6个MOS管构成,就大

31、大地限制了RAM芯片的集成度。DRAM是依靠电容来存储信息,电路简单集成度高,但电容漏电,信息会丢失,故需要专用电路定期进行刷新。DRAM的主要性能是:容量大、功耗较小、速度较慢。它被广泛地用作内存贮器的芯片。 如图5-4所示,就是一个动态RAM的基本存储单元,它由一个MOS管Q和位于其栅极上的分布电容C构成。当栅极电容C上充有电荷时,表示该存储单元保存信息“1”。反之,当栅极电容上没有电荷时,表示该单元保存信息“0”。由于栅极电容上的充电与放电是两个对立的状态,因此,它可以作为一种基本的存储单元。 图5-4 单管动态存储单元写操作:行选择线为高电平,Q管导通,写信号通过位线存入电容C中;读操

32、作:行选择线仍为高电平,存储在电容C上的电荷,通过Q输出到数据线上,通过读出放大器,即可得到所保存的信息。刷新:动态RAM存储单元实质上是依靠Q管栅极电容的充放电原理来保存信息的。时间一长,电容上所保存的电荷就会泄漏,造成了信息的丢失。因此,在动态RAM的使用过程中,必须及时地向保存“1”的那些存储单元补充电荷,以维持信息的存在。这一过程,就称为动态存储器的刷新操作。 动态RAM存储器芯片Intel 2164AIntel2164A是一种64K1的动态RAM存储器芯片,它的基本存储单元就是采用单管存储电路,其它的典型芯片有Intel 21256/21464等。 Intel 2164A的内部结构如

33、图5-5所示,其主要组成部分如下:8位地址锁存器1/4I/O门 输出缓冲器A0A1A2A3A4A5A6A7DOUTVDDVSS行时钟缓冲器列时钟缓冲器写允许时钟缓冲器数据输入缓冲器RASCASWEDIN128128存储矩阵1/128行译码器128128存储矩阵128读出放大器1/2(1/128列译码器)128读出放大器128读出放大器128读出放大器1/2(1/128列译码器)128128存储矩阵128128存储矩阵1/128行译码器图5-5 Intel 2164A内部结构 存储体:64K1的存储体由4个128128的存储阵列构成; 地址锁存器:由于Intel 2164A采用双译码方式,故其1

34、6位地址信息要分两次送入芯片内部。但由于封装的限制,这16位地址信息必须通过同一组引脚分两次接收,因此,在芯片内部有一个能保存8位地址信息的地址锁存器; 数据输入缓冲器: 用以暂存输入的数据; 数据输出缓冲器: 用以暂存要输出的数据; 1/4I/O门电路:由行、列地址信号的最高位控制,能从相应的4个存储矩阵中选择一个进行输入输出操作; 行、列时钟缓冲器:用以协调行、列地址的选通信号; 写允许时钟缓冲器:用以控制芯片的数据传送方向; 128读出放大器:与4个128128存储阵列相对应,共有4个128读出放大器,它们能接收由行地址选通的4128个存储单元的信息,经放大后,再写回原存储单元,是实现刷

35、新操作的重要部分; 1/128行、列译码器: 分别用来接收7位的行、列地址,经译码后,从128128个存储单元中选择一个确定的存储单元,以便对其进行读/写操作。 Intel 2164A的外部结构Intel 2164A是具有16个引脚的双列直插式集成电路芯片,其引脚安排如图5-6所示。 A0 A0A7A7:地址信号的输入引脚,用来分时接收CPU送来的8位行、列地址; RAS :行地址选通信号输入引脚,低电平有效,兼作芯片选择信号。当RAS为低电平时,表明芯片当前接收的是行地址; 12345678910111213141516N/CDINWERASA0A2A1VDDVSSCASDOUTA6A5A4

36、A3A7图5-6 Intel 2164A引脚 CAS CAS :列地址选通信号输入引脚,低电平有效,表明当前正在接收的是列地址(此时RAS应保持为低电平);WE WE :写允许控制信号输入引脚,当其为低电平时,执行写操作;否则,执行读操作。 D DININ:数据输入引脚; D DOUTOUT:数据输出引脚;VDDVDD:十5V电源引脚; Css Css:地; N/C N/C:未用引脚。 Intel 2164A的工作方式与时序 读操作在对Intel 2164A的读操作过程中,它要接收来自CPU的地址信号,经译码选中相应的存储单元后,把其中保存的一位信息通过DOUT数据输出引脚送至系统数据总线。地

37、址WEDOUT有效数据输出RASCAS高阻状态列地址行地址tRAStCACtRACtASRtASC图5-7 Intel 2164A读操作的时序Intel 2164A的读操作时序如图5-7所示。从时序图中可以看出,读周期是由行地址选通信号RAS有效开始的,要求行地址要先于RAS信号有效,并且必须在有效后再维持一段时间。同样,为了保证列地址的可靠锁存,列地址也应领先于列地址锁存信号CAS有效,且列地址也必须在CAS有效后再保持一段时间。要从指定的单元中读取信息,必须在RAS有效后,使CAS也有效。由于从RAS有效起到指定单元的信息读出送到数据总线上需要一定的时间,因此,存储单元中信息读出的时间就与

38、CAS开始有效的时刻有关。存储单元中信息的读写,取决于WE控制信号。为实现读出操作,要求WE控制信号无效,且必须在CAS有效前变为高电平。 写操作在Intel 2164A的写操作过程中,它同样通过地址总线接收CPU发来的行、列地址信号,选中相应的存储单元后,把CPU通过数据总线发来的数据信息,保存到相应的存储单元中去。Intel2164A的写操作时序如图5-8所示。RASCAS地址WEDINDOUT高阻状态列地址tRAStASRtASC行地址tWCStDHtDS图5-8 Intel 2164A写操作的时序 读-修改-写操作这种操作的性质类似于读操作与写操作的组合,但它并不是简单地由两个单独的读

39、周期与写周期组合起来,而是在RAS和CAS同时有效的情况下,由WE信号控制,先实现读出,待修改之后,再实现写入。其操作时序如图5-9所示。CAS地址RASWEDINDOUT高阻状态有效数据输出有效行地址列地址tRACtCRPtCRWtASRtCWDtCACtOFF图5-9 Intel 2164A读-修改-写操作的时序 刷新操作Intel 2164A内部有4128个读出放大器,在进行刷新操作时,芯片只接收从地址总线上发来的行地址(其中RA7不起作用),由RA0RA6共七根行地址线在四个存储矩阵中各选中一行,共4128个单元,分别将其中所保存的信息输出到4128个读出放大器中,经放大后,再写回到原

40、单元,即可实现512个单元的刷新操作。这样,经过128个刷新周期就可完成整个存储体的刷新。RASCAS地址行地址DOUTtRAStCRFtASR图5-10 Intel 2164A唯RAS有效刷新操作的时序 数据输出数据输出具有三态缓冲器,它由CAS控制,当CAS为高电平时,输出Dout呈高阻抗状态,在各种操作时的输出状态有所不同。 页模式操作在这种方式下,维持行地址不变(RAS不变),由连续的CAS脉冲对不同的列地址进行锁存,并读出不同列的信息,而RAS脉冲的宽度有一个最大的上限值。在页模式操作时,可以实现存储器读、写以及读-修改-写等操作。有关上述时序图中参数的具体值,请参考有关的技术手册。

41、三、 高速缓冲存储器Cache【回顾】 微型系统的存储器组织,内、外存的基本概念,存储器系统的容量、存取速度及成本等项性能指标及其相互关系。【本讲重点】高速缓冲存储器Cache的基本概念与作用,Cache-主存存储结构及其实现,Cache的基本操作,地址映象方式,替换策略,虚拟存储器的基本概念及实现方法。1、问题的提出微机系统中的内部存储器通常采用动态RAM构成,具有价格低,容量大的特点,但由于动态RAM采用MOS管电容的充放电原理来表示与存储信息,其存取速度相对于CPU的信息处理速度来说较低。这就导致了两者速度的不匹配,也就是说,慢速的存储器限制了高速CPU的性能,影响了微机系统的运行速度,

42、并限制了计算机性能的进一步发挥和提高。高速缓冲存储器就是在这种情况下产生的。2 2、存储器访问的局部性、存储器访问的局部性微机系统进行信息处理的过程就是执行程序的过程,微机系统进行信息处理的过程就是执行程序的过程,这时,这时,CPUCPU需要频繁地与内存进行数据交换,需要频繁地与内存进行数据交换,包括取指令代码及数据的读写操作。包括取指令代码及数据的读写操作。通过对大量典型程序的运行情况分析结果表明通过对大量典型程序的运行情况分析结果表明: :在一个较短的时间内,取指令代码的操作往往集中在存储器逻辑地址空在一个较短的时间内,取指令代码的操作往往集中在存储器逻辑地址空间的很小范围内(因为在多数情

43、况下,指令是顺序执行的,因此指令间的很小范围内(因为在多数情况下,指令是顺序执行的,因此指令代码地址的分布就是连续的,再加上循环程序段和子程序段都需要重代码地址的分布就是连续的,再加上循环程序段和子程序段都需要重复执行多次,因此对这些局部存储单元的访问就自然具有时间上集中复执行多次,因此对这些局部存储单元的访问就自然具有时间上集中分布的倾向);分布的倾向);数据读写操作的这种集中性倾向虽不如取指令代码那么明显,但对数组的存储和访问以及工作单元的选择也可以使存储器单元相对集中。这种对局部范围的存储器单元的防问比较频繁,而对此范围以外的存储单元访问相对甚少的现象,称为程序访问的局部性。3、Cach

44、e-主存存储结构及其实现为了解决存储器系统的容量、存取速度及单位成本之间的矛盾,可以采用Cache-主存存储结构,即在主存和CPU之间设置高速缓冲存储器Cache,把正在执行的指令代码单元附近的一部分指令代码或数据从主存装入Cache中,供CPU在一段时间内使用,由于存储器访问的局部性,在一定容量Cache的条件下,我们可以做到使CPU大部分取指令代码及进行数据读写的操作都只要通过访问Cache,而不是访问主存而实现。【优点】Cache的读写速度几乎能够与CPU进行匹配,所以微机系统的存取速度可以大大提高;Cache的容量相对主存来说并不是太大,所以整个存储器系统的成本并没有上升很多。采用了C

45、ache-主存存储结构以后,整个存储器系统的容量及单位成本能够主存相当,而存取速度可以与Cache的读写速度相当,这就很好地解决了存储器系统的上述三个方面性能之间的矛盾。如图5-21,是Cache-主存结构示意图,在主存和CPU之间增加了一个容量相对较小的双极型静态RAM作为高速缓冲存储器Cache,为了实现Cache与主存之间的数据交换,系统中还相应地增加了辅助的硬件电路。图5-21 主存-Cache层次示意图 管理这两级存储器的部件为Cache控制器,CPU与主存之间的数据传输必须经过Cache 控制器(见图5-22 (P108)进行,Cache控制器将来自CPU的数据读写请求,转向Cac

46、he存储器,如果数据在Cache中,则CPU对Cache进行读写操作,称为一次命中一次命中。命中时,CPU从Cache中读(写)数据。由于Cache速度与CPU速度相匹配,因此不需要插入等待状态,故CPU处于零等待状态,也就是说也就是说CPU与Cache达到了同步,因此,有时称高速缓存为同步Cache;若数据不在Cache中,则CPU对主存操作,称为一次失败一次失败。失败时, CPU必须在其总线周期中插入等待周期TW。CPU主存主存地址寄存器MA替 换控制部件主存-Cache地址变换机 构Cache地址寄存器Cache存储器地址总线数据总线不命中命中单字宽多字宽图5-22 Cache存储系统基

47、本结构在主存Cache存储体系中,所有的程序代码和数据仍然都存放在主存中,Cache存储器只是在系统运行过程中,动态地存放了主存中的一部分程序块和数据块的副本,这是一种以块为单位的存储方式。块的大小称为“块长”,块长一般取一个主存周期所能调出的信息长度。假设主存的地址码为n位,则其共有2n个单元,将主存分块(block),每块有B个字节,则一共可以分成2n/B块。Cache也由同样大小的块组成,由于其容量小,所以块的数目小得多,也就是说,主存中只有一小部分块的内容可存放在Cache中。在Cache中,每一块外加有一个标记,指明它是主存中哪一块的副本,所以该标记的内容相当于主存中块的编号。假定主

48、存地址为nMb位,其中M称为主存的块地址,而b则称为主存的块内地址,即:主存的块数为2,块内字节数为2b;同样,假定Cache地址n十b位,其中N称为Cache块地址,而b为Cache的块内地址,即Cache的块数为2N,块内字节数为2b,通常使主存与Cache的块内地址码数量相同,即bb,即Cache的块内字节数与主存的块内字节数相同。当CPU发出读请求时,将主存地址位(或位中的一部分)与Cache某块的标记相比较,根据其比较结果是否相等而区分出两种情况:当比较结果相等时,说明需要的数据已在Cache中,那么直接访问Cache就行了,在CPU与Cache之间,通常一次传送一个字;当比较结果不

49、相等时,说明需要的数据尚未调入Cache,那么就要把该数据所在的整个字块从主存一次调进来。4 4、Cache-Cache-主存存储结构的命中率主存存储结构的命中率命中率指命中率指CPUCPU所要访问的信息在所要访问的信息在CacheCache中的比率,相应地将所要访问的中的比率,相应地将所要访问的信息不在信息不在CacheCache中的比率称为失效率。中的比率称为失效率。CacheCache的命中率除了与的命中率除了与CacheCache的容量有关外,还与地址映象的方式有关。的容量有关外,还与地址映象的方式有关。目前,目前,CacheCache存储器容量主要有存储器容量主要有256KB256K

50、B和和512KB512KB等。这些大容量的等。这些大容量的CacheCache存储器,使存储器,使CPUCPU访问访问CacheCache的命中率高达的命中率高达9090至至9999,大大提高了,大大提高了CPUCPU访问数据的速度,提高了系统的性能。访问数据的速度,提高了系统的性能。 5 5、两级、两级Cache-Cache-主存存储结构主存存储结构CPUCPU内部的内部的CacheCache与主机板上的与主机板上的CacheCache就形成两级就形成两级CacheCache结构。结构。CPUCPU工作时,首先在第一级工作时,首先在第一级Cache(Cache(微处理器内的微处理器内的Cac

51、he)Cache)中查找数据,如果中查找数据,如果找不到,则在第二级找不到,则在第二级Cache(Cache(主机板上的主机板上的Cache)Cache)中查找,若数据在第二中查找,若数据在第二级级CacheCache中,中,CacheCache控制器在传输据的同时,修改第一级控制器在传输据的同时,修改第一级CacheCache;如果;如果数据既不在第一级数据既不在第一级CacheCache也不在第二级也不在第二级CacheCache中,中,CacheCache控制器则从主控制器则从主存中获取数据,同时将数据提供给存中获取数据,同时将数据提供给CPUCPU并修改两级并修改两级CacheCach

52、e。两级。两级CacheCache结构,提高了命中率,加快了处理速度,使结构,提高了命中率,加快了处理速度,使CPUCPU对对CacheCache的操作命中率的操作命中率高达高达9898以上。图以上。图4-224-22给出了主板上给出了主板上CacheCache存储器系统的基本结构。存储器系统的基本结构。6 6、CacheCache的基本操作的基本操作读操作读操作当当CPUCPU发出读操作命令时,要根据它产生的主存地址分两种情形:发出读操作命令时,要根据它产生的主存地址分两种情形:一种是需要的数据已在一种是需要的数据已在CacheCache存储器中,那么只需直接访问存储器中,那么只需直接访问C

53、acheCache存储器,从对应单元中读取信息到数据总线;另一种是所需要的存储器,从对应单元中读取信息到数据总线;另一种是所需要的数据尚未装入数据尚未装入CacheCache存储器,存储器,CPUCPU在从主存读取信息的同时,由在从主存读取信息的同时,由CacheCache替换部件把该地址所在的那块存储内容从主存拷贝到替换部件把该地址所在的那块存储内容从主存拷贝到CacheCache中。中。CacheCache存储器中保存的字块是主存相应字块的副本。存储器中保存的字块是主存相应字块的副本。写操作当CPU发出写操作命令时,也要根据它产生的主存地址分两种情形:其一,命中时,不但要把新的内容写入Ca

54、che存储器中,必须同时写入主存,使主存和Cache内容同时修改,保证主存和副本内容一致,这种方法称写直达法或称通过式写(Write-through,简称通写法)。其二,未命中时,许多微机系统只向主存写入信息,而不必同时把这个地址单元所在的主存中的整块内容调入Cache存储器。7、地址映象及其方式我们知道,主存与Cache之间的信息交换,是以数据块的形式来进行的,为了把信息从主存调入Cache,必须应用某种函数把主存块映象到Cache块,称作地址映象。当信息按这种映象关系装入Cache后,系统在执行程序时,应将主存地址变换为Cache地址,这个变换过程叫做地址变换(由于Cache的存储空间较小

55、,因此,Cache中的一个存储块要与主存中的若干个存储块相对应,即若干个主存块将映象到同一个Cache块)。根据不同的地址对应方法,地址映象的方式通常有直接映象、全相联映象和组相联映象三种。直接映象每个主存块映象到Cache中的一个指定块的方式称为直接映象。在直接映象方式下,主存中某一特定存储块只可调入Cache中的一个指定位置,如果主存中另一个存储块也要调入该位置,则将发生冲突。地址映象的方法:将主存块地址对Cache的块号取模,即可得到Cache中的块地址,这相当于将主存的空间按Cache的大小进行分区,每区内相同的块号映象到Cache中相同的块的位置。一般来说,如果Cache被分成2N块

56、,主存被分成同样大小的2M块,则主存与Cache中块的对应关系如图4-23所示。直接映象函数可定义为:ji mod 2N 其中j是Cache中的块号;i是主存中的块号。在这种映象方式中,主存的第0块,第2N块,第2N+l块,只能映象到Cache的第0块,而主存的第1块,第2N十l块,第2N+1十1块,只能映象到Cache的第1块,依次类推。例如,一个Cache的大小为2K字,每个块为16字,这样Cache中共有128个块。假设主存的容量是256K字,则共有16384个块。主存的地址码将有18位。在直接映象方式下,主存中的第1128块映象到Cache中的第1128块,第129块则映象到Cache

57、中的第1块,第130块映象到Cache中的第2块,依次类推。直接映象函数的优点是实现简单,缺点是不够灵活,尤其是当程序往返访问两个相互冲突的块中的数据时,Cache的命中率将急剧下降。全相联映象如图5-24所示,它允许主存中的每一个字块映象到Cache存储器的任何一个字块位置上,也允许从确实已被占满的Cache存储器中替换出任何一个旧字块当访问一个块中的数据时,块地址要与Cache块表中的所有地址标记进行比较以确定是否命中。在数据块调入时,存在着一个比较复杂的替换策略问题,即决定将数据块调入Cache中什么位置,将Cache中哪一块数据调出到主存。全相联方法块冲突的概率低,Cache的利用率高

58、,是一种最理想的解决方案,但全相联Cache中块表查找的速度慢,由于Cache的速度要求高,因此全部比较和替换策略都要用硬件实现,控制复杂,实现起来也比较困难。Cache主 存第 0 块第 1 块2N-1块2N块2N+1-1块第 0 块第 1 块2N-1块.第1区第2区Cache第 0 块第 1 块2N-1块.主 存第 0 块第 1 块2M-1块.图5-23直接映像示意图图5-24全相联映像示意图组相联映象组相联映象方式是全相联映象和直接映象的一种折衷方案。这种方法将存储空间分成若干组,各组之间是直接映象,而组内各块之间则是全相联映象。如图5-25所示,在组相联映象方式下,主存中存储块的数据可

59、调入Cache中一个指定组内的任意块中。它是上述两种映象方式的一般形式,如果组的大小为1时就变成了直接映象;如果组的大小为整个Cache的大小时就变成了全相联映象。主 存第 0 块第2k-1块第 0 块第2k-1块第2N-1块.第2k块.第2M-1块第2k块.第 0 组第 1 组第2M-R组第 0 组第 1 组第2C组图5-25组相联映像示意图例如,把Cache子块分成2C组,每组包含2R个字块,那么,主存字块MM(i)(0i2M-1)可以用下列映象函数映象到Cache字块MN(j)( 0j2N-1)上:j(i mod 2C)2R十k ( 0k2R-1)例如, 设C3位,R1位,考虑主存字块1

60、5可映象到Cache的哪一个字块中。根据公式,可得:j (i mod 2C)2R十k (15 mod 23)21十k 72十k 14十k 又:0k2R-121-11 即: k0或1代入后得j14(k0)或15(k1)。所以主存模块15可映象到Cache字块14或15,在第7组。同样可计算出主存字块17可映象到Cache的第0块或第1块,在第1组。 组相联映象方法在判断块命中以及替换算法上都要比全相联映象方法简单,块冲突的概率比直接映象方法的低,其命中率介于直接映象和全相联映象方法之间。8、替换策略主存与Cache之间的信息交换,是以存储块的形式来进行的,主存的块长与Cache的块长相同,但由于

温馨提示

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

评论

0/150

提交评论