九章节微型计算机存储器.ppt

上传人:豆**** 文档编号:52884820 上传时间:2022-10-24 格式:PPT 页数:115 大小:2.02MB
返回 下载 相关 举报
九章节微型计算机存储器.ppt_第1页
第1页 / 共115页
九章节微型计算机存储器.ppt_第2页
第2页 / 共115页
点击查看更多>>
资源描述

《九章节微型计算机存储器.ppt》由会员分享,可在线阅读,更多相关《九章节微型计算机存储器.ppt(115页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、九章节微型计算机存储器 Still waters run deep.流静水深流静水深,人静心深人静心深 Where there is life,there is hope。有生命必有希望。有生命必有希望 信息。辅存又称外存或海量存储器。2、按存储介质和作用机理分类 磁存储器,主要有磁芯、磁带、磁盘、磁泡和磁鼓。光存储器,只读式CD-ROM、可擦写光盘,还有一种介于磁和光之间的存储设备叫磁光盘(MO盘)。半导体存储器,当前计算机系统的主存主要用半导体存储器。3、按存取方式分类 微机内部 可读写存储器RAM,特点是存储器中的信息可读可写,半导体RAM断电后信息会全部丢失(易失性)。只读存储器ROM

2、,特点是存储器中信息只能读出,不能写入,关机后信息不会丢失(非易失性)。微机外部 直接存取存储器DAM,如磁盘、光盘等,可直接对存储器中任何单元进行访问,存取时间与存储单元的物理位置无关。顺序存取存储器SAM,如磁带。对存储单元的访问是按顺序进行的,与存储单元的物理位置有关。二、存储器的性能指标 1、存储器容量 存储器容量是指存储器可以容纳的二进制信息总量,即存储信息的总位(Bit)数。设微机的地址线和数据线位数分别是p和q,则该存储器芯片的地址单元总数为2p,该存储器芯片的位容量为2p q。例如:存储器芯片6116,地址线有11根,数据线有8根则该芯片的位容量是:位容量=211 8=2048

3、 8=16384位 存储器通常是以字节为单位编址的,一个字节有8位,所以有时也用字节容量表示存储器容量,例如上面讲的6116芯片的容量为2KB,记作2K 8,其中:1KB=1024B(Byte)=1024 8=8192位 存储器容量越大,则存储的信息越多。目前存储器芯片的容量越来越大,价格在不断地降低,这主要得益于大规模集成电路的发展。2、存取速度 存储器的速度直接影响计算机的速度。存取速度可用存取时间和存储周期这两个时间参数来衡量。存取时间是指CPU发出有效存储器地址从而启动一次存储器读写操作,到该读写操作完成所经历的时间,这个时间越小,则存取速度越快。目前,高速缓冲存储器的存取时间已小于5

4、ns。存储周期是连续启动两次独立的存储器操作所需要的最小时间间隔,这个时间一般略大于存取时间。3、可靠性 存储器的可靠性用MTBF(Mean Time Between Failures)平均故障间隔时间来衡量,MTBF越长,可靠性越高,内存储器常采用纠错编码技术来延长MTBF以提高可靠性。4、性能/价格比 这是一个综合性指标,性能主要包括上述三项指标存储容量、存储速度和可靠性。对不同用途的存储器有不同的要求。例如,有的存储器要求存储容量,则就以存储容量为主;有的存储器如高速缓冲器,则以存储速度为主。第二节 半导体存储器一、半导体存储器的特点分类 1、半导体存储器的特点 速度快,存取时间可到ns

5、级;集成度高,不仅存储单元所占的空间小,而且译码电路和缓冲寄存器、读出写入电路等都制作在同一芯片中。目前已达到单片1024Mb(相当于128M字节)。非破坏性读出,即信息读出后存储单元中的信息还在,特别是静态RAM,读出后不需要再生。信息的易失性(对RAM),即断电后信息丢失。信息的挥发性(对DRAM),即存储的信息过一定时间要丢失,所以要周期地再生(刷新)。功耗低,特别是CMOS存储器。体积小,价格在不断地下降。2、半导体存储器的分类 半导体存储器的分类如图9.1所示。主要分为两大类,可读写存储器RAM和只读存储器ROM。RAM分为静态RAM(SRAM)和动态RAM(DRAM)两种。目前计算

6、机内的主存储器都是DRAM,它的集成度高、功耗很低,缺点是需要再生。SRAM是非挥发的,所以不需要再生,但集成度比DRAM要低,计算机中的高速缓冲存储器大多用SRAM.现在有一些新的RAM,如组合RAM(IRAM),将刷新电路与DRAM集成在一起;非易失RAM(NVRAM),实际上是由SRAM和EEPROM共同构成。正常情况下,它和一般SRAM一样,而在系统掉电瞬间它把SRAM中的信Flash存储器息保存在EEPROM中,从而使信息不丢失。只读存储器ROM的特点是用户在使用时只能读出其中的信息,不能修改和写入信息。近几年出现了一中新的存储器叫Flash存储器(闪烁存储器),这是一种电可擦除的非

7、易失性只读存储器,我们将在后面详细介绍。二、半导体存储器的组成 半导体存储器组成的框图如图9.2所示。它一般由存储体、地址选择电路、输入输出电路和控制电路组成。1、存储体 存储体是存储1和0信息的电路实体,它由许多个存储单元组成,每个存储单元一般由若干位(8位)组成,每一位需要一个存储元件,每个存储单元有一个编号,称为地址。存储器的地址用一组二进制数表示,其地址线的根数n与存储单元的数量N之间的关系为:2n=N地址线数与存储单元数之间的关系列于表9-1中。2、地址选择电路 地址选择电路包括地址译码器和地址码寄存器。地址译码器用来对地址译码。设其输入端的地址线有n根,输出线数为N,则它分别对应2

8、n个不同的地址码,作为对地址单元的选择线。这些输出的选择线又叫做字线。地址译码的方式有两种:单译码方式 它的全部地址码只用一个电路译码,译码输出的字选择线直接选中对应的存储单元,如上面图9.2所示。这一方式需要的选择线数较多,只适用于容量较小的存储器。双译码方式(或称矩阵译码)双译码方式如图9.3所示。它将地址码分为X与Y两部分,用两个译码电路分别译码。X向译码称为行译码,其输出线称为行选择线,它选中存储矩阵中一行的所有存储单元。Y向译码又称为列译码,其输出线称为列选择线,它选中一列的所有单元。只有X向和Y向的选择线同时选中的那一位存储单元,才能进行读写操作。由图可见,具有1024个基本单元的

9、存储体排列成3232的矩阵,它的 X向和Y向译码器各有32根译码输出线,共64根。若采用单译码方式,则要1024根译码输出线。因此,双译码方式所需要的选择线数目较少,也简化了存储器的结构,故它适用于大容量的存储器。3、读写控制电路 读写控制电路包括读写放大器、数据寄存器(三态双向缓冲器)等。它是数据信息输入输出的通道。外界对存储器的控制信号有读信号RD、写信号WR和片选信号CS。三、可读写存储器(RAM)1、静态RAM(SRAM)静态RAM的基本电路 静态RAM的基本存储电路是由6个MOS管组成的双稳态触发器,如图9.4所示。图中,T3、T4是负载管,T1、T2组成RS触发器,它有两个稳定状态

10、。在A点(相当于Q端)与B点(相当于Q端)可以分别积存信息1和0。T5、T6为行向选通门,受行选线的电平控制。T7、T8为列向选通门,受列选线的电平控制。由此组成了双译码方式。当行选线与列选线上的电平都是高电平时,则分别将T5、T6与T7、T8导通,使A、B两点的信息经D与D两点分别送至输入输出电路的I/O线及I/O线上,从而存储器某单元位线上的信息同存储器外部相通。这时,就可以对该单元位线上的信息进行读写操作。写入时,被写入的信息从I/O线和I/O线输入。如写1时,使I/O线为高电平,I/O线为低电平,经T7、T5与T8、T6分别加至A端和B端,使T1截止而T2导通,于是A端为高电平,触发器

11、为存1的稳态;反之亦然。读出时,只要电路被选中,T5、T6与T7、T8导通,A端和B端的电位就送到I/O线及I/O线上。若原存的信息为1,则I/O线上为1,I/O线上为0;反之亦然。读出时,触发器的状态不受影响,故为非破坏性读出。静态RAM的组成 静态RAM的组成如图9.5所示。存储体是一个由6464=4096个6管静态存储电路组成的存储矩阵。在存储矩阵中,X地址译码器输出为X0-X63共64根行选择线,Y地址译码器输出为Y0-Y63共64根列选择线。只有行列都被选中的那个存储电路,才能进行读出和写入。图中为4K1位的存储器,因此它仅有一个I/O电路。如果要组成字长为8位的存储器,则同时有8个

12、存储电路与外界交换信息。这种存储器,将列按8位分组,每根列选择线控制一组的列向门同时打开,相应地也应有8个I/O电路。每一组的同一位,共用一个I/O电路。对于每块芯片,都有一个片选控制端CS,只有当该端加上有效信号时,才能对该芯片进行读写操作。静态RAM芯片举例 常用的静态RAM芯片有2114(1K 4位)、2142(1K 4位)、2141(4K 1位)6116(2K 8位)、6264(8K 8位)、62256(32K 8位)和628128(128K 8位)等。6116有2K 8位=16384个存储位,2K 表示芯片内的地址有11位(A0-A10),8位表示一个单元有8个二进制位。芯片内有12

13、8128的存储单元矩阵。它有11条地址线,7条用于行地址译码,4条用于列地址译码,每条列地址译码线控制8个基本存储单元(128 16 8)。6116的工作方式如表9-2所示。表9-2:6116芯片的工作方式 6264芯片(8K 8位):片内地址13根,每个存储单元8位。目前常用的6264是8K 8位的静态RAM芯片,它的引脚如图9.7所示。它有13根地址线,有两个片选信号CE1和CE2,使用时可以只用一根,这时使另一根总是有效。CSOEWE工作方式001读010写1未选通它的操作控制如表9-3所示。图9.7 6264的引脚图 2、动态RAM(DRAM)动态RAM的基本单元 动态RAM是以MOS

14、管栅极电容是否充有电荷来存储信息的,其基本单元如图9.8所示。由于只用一个管子,所以功耗很低,存储容量可做得很大。它是由T1管和寄生电容Cs组成的。读操作时,地址译码电路使某条字选择线为高电平,T1管导通,则存储在Cs上的信息通过T1管送到D线上,再通过放大,即可得到存储的信息。写操作时,使字选线上为高电平,T1管导通,待写入的信息由位线D(数据线)存入Cs。Cs上的信息被读出后,其寄存的电压由0.2V下降为0.1V,所以这是一种破坏性读出,读出后必须重写。刷新操作。由于电容上的信息随时间增加慢慢消失所以这种存储单元必须定期刷新,以保持他所存的信息。刷新操作实际上也是一次读操作。不过这时信息并

15、不读到数据线上。目前计算机的内存大多采用这种单管的动态存储器。动态RAM芯片举例 MCM511000是1M1位的高速动态RAM,图9.9是它的引脚图。10根9根1根 在芯片中有10条地址线,被行列分时复用;D和Q分别是数据输入线和数据输出线;控制线有读写线W、行地址选通线RAS、列地址选通线CAS和测试功能使能线TF。芯片内部功能如图9.10所示。芯片的存储体是一个512行2048列=1048576位的存储阵列。A0-A9 10位地址线在RAS控制下先送到行地址锁存器,其中9位行地址译码后产生512根行选择线。另一根行地址线与A0-A9 10位列地址在CAS控制下,译码产生2048根列选择线。

16、读出和写入是分开的,W=低时为写入,D引脚上的数据经信号放大和 I/O门控写入选中的存储单元。W=高时为读出操作,被选中单元的数据被读出到Q线上。刷新是逐行进行的,由刷新地址计数器(9位)和刷新控制器进行,要求8ms对整个存储体刷新一次,则对每一行 刷新要8000/512=15.6微秒。动态RAM刷新控制逻辑 图9.11是由4 K1位动态存储器组成的存储模块中的刷新控制逻辑。该逻辑分为两大部分:32个4 K1位动态RAM组成的存储模块、总线驱动器和外围电路。每个芯片上有两条控制信号线CS和CE,在刷新操作时CS为高电平,数据输入输出处于高阻态被禁止。CE是芯片使能控制。逻辑的另一部分是总线驱动

17、器和外围电路,外围电路主要是刷新时钟发生器、刷新地址计数器、芯片使能逻辑和2到1的多路转换器。2到1的多路转换器输出动态RAM的行地址,正常操作时,输出从地址总线来的行地址;刷新操作时,输出有刷新地址计数器来的行地址。刷新时,刷新时序使所有芯片的CS处于无效状态,数 据输入输出被禁止。并使4个存储组的CE全部有效,同时对4个存储组刷新。每一个存储组共有64行512列基本存储单元。一个刷新周期内只刷新有刷新地址计数器所选中的那一行中的全部单元。在每次刷新周期结束后,刷新计数器加1。动态存储器刷新时间间隔一般为2ms,因此在2ms内要刷新64行。动态RAM控制器 与SRAM比,DRAM要复杂的外部

18、电路支持。图9.12显示了DRAM控制器的基本结构,它由以下几个部分组成:地址多路开关:它一方面将CPU的地址总线转换成分时的DRAM行列地址,另一方面在地址总线与刷新地址之间切换。刷新地址计数器:每次刷新由它提供刷新地址。刷新定时器:提供刷新定时信号。仲裁电路:因CPU访存与刷新是异步的,故有可能发生冲突。可以依据一定的策略决定谁有优先权(通常是刷新优先)。定时发生器:负责产生行、列地址选通信号、读写控制信号等。现在已经有将DRAM芯片和DRAM控制器集成在一起的产品。DRAM的演变和DIMM DRAM的演变 存储器芯片的容量和速度在不断地提高,此外还改进存储器的组织结构和访问方式。较早时的

19、FPM(快页模式)DRAM,EDO(扩展数据输出)DRAM,到目前的SDRAM(同步DRAM),以至新一代的DDR(双数据率)SDRAM和RDRAM(Rambus DRAM)等。SDRAM可用一个时钟周期完成一个数据的访问和刷新,因而大大提高了数据传输率,成为目前微机的主流。SDRAM DIMM的接口信号 目前使用168线的双边接触内存模块(DIMM)插槽,存储条可直接插在上面。168个信号分成6组:地址线、数据信号线、串行存在探测(SPD:Serial Presence Detect)信号线、控制线、电源信号和其它信号线。3、双端口RAM 双端口RAM的基本结构 双端口RAM提供了两个独立的

20、端口,每个端口有自己的控制线、地址线和输入输出数据线。具有两个端口的DS1609的内部结构如图9.13所示。主要由双口存储阵列和两个完全独立的端口A、B组成。其中双口存储阵列中的存储单元电路如图9.14的左图所示,其核心仍属静态存储器,由8个MOS管构成;A、B端口分别由地址/数据复用线控制逻辑和芯片操作控制逻辑构成。读写操作 读周期时,地址/数据复用线AD0-AD7分时使用,CE#和OE#(这里的#号表示低电平有效,相当于上划线)同时有效为读操作,这时WE#必须维持高电平。写周期时,地址/数据复用线AD0-AD7分时使用,CE#和WE#(这里的#号表示低电平有效,相当于上划线)同时有效为写操

21、作,这时OE#必须维持高电平。仲裁 对两个端口同时进行读操作时不需要仲裁,但是当两个端口同时进行读和写操作或同时进行写操作,则需要进行仲裁。解决的方法有硬件判优、中断方法、令牌传递和软件判优等方法,这里不作详细介绍。4、先进先出存储器FIFO 先进先出存储器(FIFO)的主体是静态存储器,是一种允许以不同速率进行读写操作的存储器,主要用作两种或多种速度不匹配接口电路的中间缓冲。图9.15是美国德州仪器公司生产的SN74ALVC7804/06/14低功耗单向18位的FIFO结构图。其操作在装载时钟LDCK和卸载时钟UNCK控制下同步进行。写入操作在LDCK的作用下同步,读出操作在UNCK的作用下

22、同步。写入时,在LDCK的上升沿,数据写入这种FIFO;读出时,在UNCK的上升沿,数据从这种FIFO读出,OE#为低。FIFO的状态信号有FULL#、EMPTY#、HF和AF/AE,分别表示存储器满、空、半满和几乎满/几乎空。当存储器为满时,FULL#输出低,否则为高;当存储器空时,EMPTY#输出为低,否则为高;当存储器中装满一半时,HF输出为高,否则为低。PEN#为编程允许信号,平时不用,为高电平。加电时,FIFO必须复位,在RESET#为低期间,FIFO复位。四、只读存储器ROM 1、只读存储器的特点 信息需预先写入,使用过程中信息只能读出,不能写入。只读存储器是非易失性的,即断电后信

23、息不会丢失。只读存储器主要用于存放不经常修改的信息或程序。在计算机中常用于存放各种系统软件(如BIOS)和系统配置参数、应用程序和常数、表格等。2、只读存储器的原理和组成 只读存储器存储信息的原理 ROM的存储元件如图9.16所示,它可以看作是一个单向导通的开关电路。当字线选中该单元时,如果开关S是断开的,位线D上将输出信息1;如果S是接通的,则位线D经T1接地,将输出信息0。ROM的组成结构 ROM的组成结构与RAM类似,一般也由地址译码电路、存储矩阵、读出电路及控制电路等部分组成。图9.17是有16个存储单元、字长为1位的ROM结构图。图中采用了复合译码方式,其 图9.16 ROM存储单元

24、行列地址各占2位,行列线的交叉点为选中单元。再根据被选中单元的开关状态,数据线上将读出1或0。图中所示是16个存储单元的1位,8个这样的阵列,才能组成一个168位的ROM存储器。3、掩膜式ROM 掩膜ROM由厂家制成后,用户不能修改,图9.18是一个简单的44位MOS型ROM,采用单向译码结构。若地址为10,则选中2号单元,输出为0101。图中存储内容如表9-4所示。4、可编程只读存储器PROM 可编程只读存储器PROM可根据用户要求写入存储信息,但只能写一次。厂家出厂时,交叉点处均有二极管或三极管,用户可以利用外部地址对存储矩阵的管子进行选择,如一些被烧断,其余保持原状,这样就完成了编程,但

25、一旦写入,则无法更改,所以是一次性写入的ROM。这种片子现在已很少使用,几乎被EPROM或闪烁存储器代替。5、可编程可擦写只读存储器EPROM EPROM基本单元大多采用浮栅MOS管,P沟道浮栅MOS管EPROM的基本单元如图9.19所示。初始时浮栅上没有电荷,管子内没有导电沟道,S(源极)和D(漏极)不导通。写入时,在D和S间加上较高负电压,另外加编程脉冲,D和S之间瞬时产生雪崩击穿,大量电子穿过绝缘层注入到浮动栅,当高电压撤去后,由于浮栅被绝缘层所包围,注入电子在室温、无光照下可以长期保存在浮栅中。于是在D和S之间形成了导电沟道,EPROM单元导通,存储电路输出为“0”。S和D不导通时则输

26、出为“1”。EPROM芯片上方有一个石英玻璃窗口,当用紫外线照射时,就可以使浮栅上的电荷放掉,而恢复初态。一般要照射20-30分钟。EPROM芯片举例 目前使用最多的是Intel公司的EPROM系列,如图9.20所示。从2716到27512,容量从2KB到64KB都有。下面以2764A为例,介绍EPROM的工作方式和性能。2764A是8K8位的芯片,有13根地址线,8根数据线,2根电压输入端Vpp(编程电压)和Vcc,一根芯片允许端CE和一个编程端PGM,其功能框图如图9.21所示。2764A有7种工作方式,如表9-5所示,分别是读方式、输出禁止方式、备用方式、编程方式、校验方式、编程禁止方式

27、和标识符模式。256 32 8 6、电可擦除可编程只读存储器EEPROM EPROM虽可多次编程,但即使内部只有一位数据有错误,都必须重写,而且要用紫外线照射,使用不太方便。近年来出现的电可擦除可编程的只读存储器EEPROM能以字节为单位擦除和改写,给用户带来极大的方便。早期的EEPROM编程时要加21V高电压,很难在线编程和擦除。现在的EEPROM只需外加单一+5V电源,除可独立编程和擦除外,也可以在线编程和擦除。例如:Intel 2815,2K8位 EEPROM,需加编程电压21V;Intel 2864A,8K8位 EEPROM,不用加编程电压 图9.22 2864A引脚图,只加单一+5V

28、,可在线编程和擦除,其引脚如图9.22所示。2864A的工作方式如表9-6所示。表9-6:2864A的工作方式EEPROM的读写操作与SRAM基本相同,只是写入时间较长,写一字节大约要1-5ms。7、新一代可编程只读存储器FLASH(闪烁存储器)闪烁存储器兼有EEPROM的可编程能力和不易失性,并且容量大,速度快。最新的闪烁存储器已达64M位,只需单一+5V供电,便可读写、编程和擦除等操作。目前基本上有三类闪烁存储器。标准并行FLASH:如Intel 公司的A28F 系列;AMD公司的Am 28F 系列;ATMEL公司的AT29C 系列。与非(NAND)FLASH 韩国三星公司的KM29N 系

29、列,采用I/O总线为命令/地址/数据分时复用的方法,所以用于接口的引脚减少。串行FLASH 由于采用串行接口,故接口引脚大大减少,总共只有6条引脚。如美国国家半导体公司的NM29A040/080(4M/8M位)。FLASH与其他类型的存储器比较,有一些特点,参看表9-7和表9-8。图9.23是日立公司生产的标准FLASH 8M位 HN29WT800引脚图和引脚说明。它有2048256个存储节点,每个节点有16个基本单元,总共是2048256 16=8Mb。它有19条地址线,分为11条译码产生2048条行地址;8条译码产生256条列地址,组成2048256 矩阵。它的输入输出线有16条,可以进行

30、8位和16位数据的操作。其它还有一些控制线,这里不再细说。第三节 存储器与CPU的连接一、存储器与CPU连接时要考虑的问题 1、存储器的容量 一个大的存储器系统有几十、几百M字节,一般要根据系统来定。对于嵌入式或用户自己做的应用系统,可根据实际需要来设计存储器的容量。2、存储空间的安排 微机内存包括ROM区和RAM区,它们都由许多芯片组成,所以要安排地址空间,即地址分配;每个存储器芯片还需要片选信号,这些信号如何产生等问题。3、CPU总线的负载能力 通常CPU总线的负载能力是一个TTL器件或20个MOS器件,当总线上接的器件很多,超过允许值时,应该在总线上加接缓冲器或驱动器,以增加CPU的负载

31、能力。4、CPU的时序和存储器速度之间的配合 CPU执行存储器读写指令都有固定的时序,为保证CPU读写存储器的准确性,存储器的速度必须与CPU匹配。5、一个8位微机的存储器子系统 如图9.24所示,有4片2732(4K 8位)EPROM组成的16KB的ROM区,4片6116(2K 8位)SRAM组成的8KB的RAM区。二、存储器中的片选译码 1、地址译码器 74LS138 集成译码器74LS138 集成地址译码器常用74LS138,它的引脚和逻辑电路如图9.25所示。74LS138的功能如表9-9所示。它有三个使能端G1=1、G2A =0 和G2B=0;3个译码输入端C、B、A决定8个输出端的

32、状态。在图9.24中4片2732EPROM和4片6116SRAM,其地址F8000-F8FFFH F9000-F9FFFH FA000-FAFFFH FB000-FBFFFH FC000-FC7FFHFC800-FCFFFHFD000-FD7FFH FD800-FDFFFH范围计算如表9-10所示:EPROM1:F8000-F8FFFH ;4KB EPROM2:F9000-F9FFFH;4KB EPROM3:FA000-FAFFFH;4KB EPROM4:FB000-FBFFFH;4KB SRAM1:FC000-FC7FFH;2KB SRAM2:FC800-FCFFFH;2KB SRAM3:F

33、D000-FD7FFH;2KB SRAM4:FD800-FDFFFH;2KB 采用基本门电路 内存芯片较少的存储器系统可用一些基本逻辑门电路来实现。图9.24的系统,若用基本门电路来做,则EPROM1和EPROM2的片选电路如图9.26或9.27所示。图9.26和图9.27中,当高位地址 A19-A12为11111000,且 IO/M=“L”时,门电路1输出“L”,选中EPROM1;而当 A19-A12为11111001,且IO/M=“L”时,门电路2输出“L”,选中EPROM2。图9.24的系统若全部用门电路译码,则需要6个这样的门电路组合。IO/M 图9.26中EPROM1的片选信号CE,

34、用非门和或门来实现,逻辑表达式表示如下:CE=A19+A18+A17+A16+A15+A14+A13+A12+IO/M 图9.27中EPROM1的片选信号CE,用非门和与非门来实现,逻辑表达式表示如下:CE=A19 A18 A17 A16 A15 A14 A13 A12 IO/M 同理,可写出图9.28中EPROM2的片选信号CE的逻辑表达式。2、实现片选的三种方法 全译码法 图9.24所示的存储器译码电路中,CPU的全部地址线 A19-A0都参与地址译码,因此对应于存储器芯片中的任意单元都有唯一确定的地址,这种片选方法称为全译码。有些CPU有IO/M线来区分IO读写,还是存储器读写;有的CP

35、U没有IO/M线,但有独立的IO线,如IOR、IOW和存储器读写线MR、MW。部分译码法图9.24所示的存储器译码电路中,若A19不参加译码,即74LS138的G1端接+5V,则A19不论是“0”还是“1”,只要A18-A12满足1111000都能选中EPROM1,则EPROM1的地址范围为78000-78FFFH和F8000-F8FFFH,那么一个存 储单元可以由两个地址码来选中,这种片选方法称为“部 分译码”。由此可见,部分译码法,地址将产生重叠现象。线选法 线选法是只用高位地址总线中的某一条来控制片选。A0-A11 A0-A10 A0-A10 如果一个微机系统存储容量较小,例如只要求4K

36、B的EPROM区和4KB的SRAM区,则可不采用译码器芯片74LS138,而采用图9.28所示的片选电路。该图中,有1片2732EPROM和2片6116SRAM,共8KB的存储器系统。图中A11-A0直接同2732的地址线相连,A10-A0直接同6116的地址线相连。地址线A11用来区分两片6116的地址范围。地址线最高位A19用来划分4KBEPROM区和4KB SRAM区的地址范围。A19=0选中SRAM,A19=1选中EPROM。4KB EPROM区和4KB SRAM区分别对应于512K个地址,这样一个存储单元可以有128个地址来选中,凡是A19、A11-A0这13位地址固定,A18-A1

37、2这7位地址为任意值的128种地址码都能选中同一存储单元,这称为“地址重叠”。三、存储器芯片的连接 1、位扩充和字节扩充 存储器芯片可以是1位、4位和8位的结构,而存储器系统都是以字节编址的。一个大的存储器系统是由很多芯片组成的,这些芯片采用位并联来进行位扩充,采用地址串联进行字节扩充。例如:用2564位的芯片构成1KB的存储器,如图9.29所示。因为每块芯片只有4位,所以要进行位扩充,图中采用两块并联方法组成8位(一个字节);每块芯片只有256个存储单元,所以要进行字节扩充,图中采用地址串联方法组成1024个存储单元(1KB)。图中采用部分译码法,只用A8、A9两根地址线译码产生四根片选线。

38、每根 对应的地址范围分别为0-255、256-511、512-767和768-1023(A9以上的地址线固定为0)。例如:用64K1位RAM构成256KB的存储器系统,问:需要多少个RAM芯片?设系统地址线有20位,采用全译码,则需要多少 位地址作为片外地址译码?片内地址多少位?解:需要芯片数=位扩充数字节扩充数,本题中 位扩充数=8/1=8 字节扩充数=256/64=4 所以需要芯片数=8 4=32(片)片内地址16位,片外地址=20-16=4位 2、存储器芯片存取时序及与CPU时序的配合 由于CPU对存储器的读写有固定的时序,因此要保证CPU对存储器的正确存取,存储器的存取时序必须与CPU

39、的时序相匹配。8086的读写周期都是4个时钟周期,如果存储器的速度较慢,在规定的4个时钟周期内不能完成读写操作,则必须在T3周期后插入等待周期Tw,具体插入几个等待周期,要视存储器芯片而定。可以参看书上 P153-P154页的图。第四节 PC微机的存储器一、PC微机存储器的空间分布表9-11:Intel CPU芯片的存储空间CPU芯片地址线(根)寻址空间数据线(根)8086201 MB16802862416MB1680386324GB3280486324GB32805863664GB64(32)8088/8086只有20根地址线,可寻址1MB空间。表9-12是IBM PC/XT存储器空间分布。

40、地址00000-BFFFFH共768KB RAM存储区,地址C0000H-FFFFFH 共256KB ROM区。80386地址线有32条,可寻址4GB物理地址空间。实际内存容量为4MB或8MB。图9.30是一个80386微机系统4MB 内存分布图,其中低端640KB为基本内存,从 A0000-FFFFFH的384KB是上位内存区。从100000H到3FFFFFH的3MB是扩展内存,扩展内存的第一个64KB称为高端内存区。此外,还有1MB的扩充内存。二、PC微机内存类型及管理 1、系统存储器 系统存储器就是PC/XT所使用的1MB地址空间,由常规内存和上位内存区组成。常规内存:存储器低端640K

41、B,地址为00000-9FFFFH,由DOS统一管理,主要存放BIOS、DOS、常驻内存程序和应用程序等。上位内存区:从A0000H-FFFFFH的384KB是上位内存区,只读ROM、显示适配器。磁盘驱动器缓冲器及其它硬件扩展卡都使用这部分存储器。下面介绍的上位内存块和扩充存储器64KB的存储窗口,均位于上位内存区中。2、扩展存储器 扩展存储器是指80286以上微机系统中1MB以上的内存。扩展存储器使用专门的扩展存储器驱动程序,扩展存储器规范 XMS统一使用扩展存储器的标准,并定义了内存中三个特殊区域:高端内存区、上位内存块、扩展内存块。高端内存区:是扩展内存的第一个64KB空间,80286以

42、上微机可将DOS安装到高端内存区,从而留出更多的常规内存供应用程序使用。上位内存块:是上位内存区中一些未被使用的存储空间,通过专门的硬件或内存管理软件可访问到。在80386中,可以在这部分空间中运行设备驱动程序和内存驻留程序。扩展内存块:是扩展存储器中除高端内存区以外的剩余存储区域。3、扩充存储器 扩充存储器通常安装在专门的扩充内存卡上,由扩充内存管理程序来管理。扩充存储器的技术标准是扩充存储器规范EMS。扩充存储器被划分成若干个16KB的页面,通过访问上位内存区中一个64KB的存储窗口,可以读写扩充存储器的4个不同的页面。在此80386以上微机系统中,可以将扩展存储器中的一些内存模拟成扩充存

43、储器来使用。由于存储器的集成技术越来越高,现在的微机已经不用扩充存储器。第五节 PC 微机存储器的扩展技术一、高速缓冲存储器(Cache)1、使用Cache的必要性 计算机内存主要是DRAM,价格低、容量大,但存取速度难以提高;而CPU速度提高很快。目前CPU的速度比DRAM要快一个数量级以上,导致两者速度不匹配。慢速存储器限制了高速CPU的性能,限制了计算机性能的进一步发展和提高。半导体存储器中,只有双极型TTL SRAM,存取速度与CPU处于同一量级,但这种RAM价格较贵,功耗很大,集成度低,所以不能将所有DRAM都采用SRAM。折中的 办法是分级处理,在主存和CPU之间加一个容量相对小的

44、双极型SRAM作为高速缓冲存储器Cache。目前Cache的容量大多为256KB、512KB,分为一级Cache、二级Cache等。CPU访问Cache的命中率可达到90%-98%,这样就大大提高了CPU访问数据的速度。2、程序的局部性原理 对大量典型程序的运行情况分析结果表明,在一个较短时间内,由程序产生的地址往往集中在存储器逻辑地址空间的很小范围内。在多数情况下,指令是顺序执行的,因此指令地址的分布就是连续的,再加上循环程序段和子程序段要重复执行多次,因此对这些地址的访问就具有时间上集中分布的倾向。数据这种集中倾向不如指令明显,但对数组的存储和访问,以及工作单元的选择都 可以使存储器地址相

45、对集中。这种对局部范围的存储器地址频繁访问,而对此范围以外的地址则访问较少的现象,称为程序访问的局部性。Cache的设计利用了程序访问的局部性原理。在主存和CPU之间设置Cache,把正在执行的指令地址附近的一部分指令或数据从主存装入Cache中,供CPU一段时间使用,这是完全可行的。3、Cache的基本工作原理 目前微机中Cache一般装在主板上,在Intel 486 CPU中集成了8KB的数据和指令共用的Cache;在Pentium CPU中集成了8KB的数据Cache和8KB的指令Cache,与主板上的Cache形成两级Cache结构。CPU首先在第一级Cache中查找数据,若找不到,则

46、在在第二级Cache中查找;若数据不在这两级Cache中,则Cache控制器从主存中获取数据,同时将数据提供给CPU,并修改两级Cache。两级Cache的结合,提高了命中率。命中率是指CPU访问Cache操作的成功概率,可高达98%。图9.31显示了带有Cache存储器的存储系统的结构。中间方框中的Cache控制部件实际上为一块芯片(82385),其工作原理大致如下:由于Cache对CPU是透明的,故CPU每次均假定访问主存,因而CPU送出的地址均是主存地址。该地址保存在Cache控制部件内的主存地址寄存器MA中。Cache容量远小于主存容量,故只有一部分主存内容保存在Cache中的,控制部

47、件应能检索哪一部分内容在Cache中。为此,可以用MA中的地址作为关键字在主存 -Cache地址变换部件(由按内容进行访问的相联存储器CAM构成)中进行检索。如果检索成功,说明要访问的主存的某一部分已经保存在Cache中。此时可根据CAM中的Cache地址转而访问Cache。如果检索不成功,说明要访问的主存的某一部分不在Cache中。此时CPU可直接访问主存,同时依据某种算法将从主存中取得的信息以及该地址附近的内容送入Cache(因为根据某种假设,这块数据很可能还要被访问)。由此可见,cache控制部件主要需要解决三个问题:如何在主存地址与cache地址之间进行转换;在cache不命中时如何替

48、换cache中的内容;如何保持主存与cache的一致性。4、cache地址映象和变换(不要求)在主存的地址和cache地址间建立一种确定的逻辑关系,即根据主存的地址来构成cache的地址。这样的逻辑关系称为地址映象。地址映象关系可用一张表来表示,这张表反映主存单元和cache单元的对应关系。通常用快速存储器来实现。直接映象 一个主存块只能映象到cache中的唯一一个指定块的地址映象方式称为直接映象。地址映象方法一般是将主存块地址对cache的块数取模得到cache中的块地址,这相当于将主存的空间按cache的尺寸分区,每区内相同的块号映象到cache中相同的位置。如图9.37所示。实现地址转换

49、的过程如图9.38所示。其中地址映象用 主存分为M个区,每个区有N个块,总共有MN块,编号从0到MN-1。Cache有N个块。的块表中包含cache存储器各块的区号。主存地址分成三段:区号、块号和块内地址。区号作为标志存放在地址映象表中,用于判断命中与否。主存的块号直接用于查地址映象表,块内地址用于块内寻址。在访存操作时,根据主存地址中的块号读出块表中的区号,并与当前地址的区号进行比较,结果相同表示cache命中,访问可对cache 进行;不相同则表示不命中,访问需对主存进行。例1:设一个cache的容量为2KB,每个块为16B,求:该cache可容纳多少个块?如果主存容量是256KB,则主存

50、有多少个块?主存的地址有多少位?Cache地址有多少位?在直接映象方式下,主存中的第i块映象到Cache中哪 一个块中?进行地址映象时,存储器地址分成哪几段?各段有几位?解:cache中有2048/16=128个块 主存有256K/16=16384个块 主存容量为256KB=218字节,所以主存字节地址有18位。Cache容量为2KB=211字节,所以cache的字节地址为11位。在直接映象方式下,主存中的第i块映象cache中第i MOD 128 块中。存储器的字节地址分成三段:区号、块号和块内地址,分别为7位、7位和4位。全相联映象 每个主存块都可以映象到任何cache块的地址映象方式称为

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 小学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com