版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
衡量存储器的性能指标主要有三个:4.1概述容量:存储器系统的容量越大,表明其能够保存的信息量越多,相应计算机系统的功能就越强,因此存储容量是存储器系统的第一性能指标。速度:存储器的存取速度相对于高速的CPU总要慢1-2个数量级,这会影响到整个系统的工作效率。
成本:也是衡量存储器系统的重要性能指标。容量速度成本7/23/20231为了兼顾以上三个方面的指标通常采用三级存储器结构:其速度接近高速缓存的速度;其容量接近辅存的容量;位成本接近廉价慢速的辅存平均价格。
本章重点介绍半导体存储器的工作原理、计算机主存的构成和工作过程、存储器的层次结构。高速缓冲存储器主存储器辅助存储器7/23/202324.1.1存储器分类1.按构成存储器的器件和存储介质分类按构成存储器的器件和存储介质主要可分为:磁芯存储器、半导体存储器、光电存储器、磁膜、磁泡和其它磁表面存储器以及光盘存储器等。
从五十年代开始,磁芯存储器曾一度成为主存储器的主要存储介质。但从七十年代起,半导体存储器逐渐取代了磁芯存储器的地位。目前,绝大多数计算机都使用的是半导体存储器。7/23/202332.按存储器的存取方式分类
按存取方式可分为随机存取存储器、只读存储器等
(1)随机存储器RAM(RandomAccessMemory)
随机存储器(又称读写存储器)是指通过指令可以随机地对各个存储单元进行读和写,在计算机系统中,主存储器大都采用随机存储器。按照存放信息的方式不同,随机存储器又可分为静态和动态两种。静态RAM(SRAM)是以双稳态元件作为基本的存储单元来保存信息,而动态RAM(DRAM)是靠电容来存放信息的,使得这种存储器中存放的信息容易丢失,必须定时进行刷新。7/23/20234(2)只读存储器ROM(Read-OnlyMemory)
只读存储器是一种对其内容只能读出不能写入的存储器。它通常用来存放固定不变的程序、汉字字型库、字符及图形符号等。由于它和读写存储器分享主存储器的同一个地址空间,故仍属于主存储器的一部分。随着半导体技术的发展,只读存储器也出现了不同的种类,如可编程序只读存储器PROM(ProgrammableROM);可擦除可编程只读存储器EPROM(ErasibleProgrammableROM)和电可擦除可编程只读存储器EEPROM(ElectricErasibleProgrammableROM)以及近年来发展起来的快擦型存储器(FlashMemory)具有EEPROM的特点。
7/23/202353.按在计算机中的作用分类
按在计算机中的作用可以分为主存储器(内存)、辅助存储器(外存)、缓冲存储器等。主存储器速度高,但容量较小,每位价格较高。辅存速度慢,容量大,每位价格低。缓冲存储器用在两个不同工作速度的部件之间,在交换信息过程中起缓冲作用。
7/23/202364.按掉电时所存信息是否容易丢失分类
分成易失性存储器和非易失性存储器。半导体存储器(DRAM,SRAM),属易失性。磁带和磁盘等磁表面存储器,属非易失性。
7/23/20237
双极型半导体存储器
MOS存储器(静态、动态)
主存储器
掩膜型只读存储器MROM
可编程只读存储器PROM
可擦除可编程只读存储器
(EPROM,EEPROM)
快擦型存储器存储器
磁盘(软盘、硬盘、盘组)存储器
辅助存储器
缓冲存储器随机存储器(RAM)只读存储器(ROM)磁带存储器光盘存储器7/23/20238地址寄存地址译码存储体控制电路AB数据寄存读写电路DBOEWECS①存储体存储器芯片的主要部分,用来存储信息②地址译码电路根据输入的地址编码来选中芯片内某个特定的存储单元③片选和读写控制逻辑选中存储芯片,控制读写操作4.1.2存储器系统结构7/23/202391.基本存储单元一个基本存储单元可以存放一位二进制信息,其内部具有两个相互对立的状态,并能够在外部对其状态进行识别和改变。
2.存储体一个基本存储单元只能保存一位二进制信息,若要存放M×N个二进制信息,就需要用M×N个基本存储单元,它们按一定的规则排列起来,由这些基本存储单元所构成的阵列称为存储体或存储矩阵。如8k×8表示存储体中一共8K个存储单元,每个存储单元存放8位二进制数据。8×1024×8=65536
基本存储单元
存储器系统由以下六部分组成:7/23/2023103.地址译码器
存储器系统是由许多存储单元构成的,CPU要对某个存储单元进行读/写操作时,必须先通过地址总线发出所需访问存储单元的地址码。地址译码器的作用是接受地址信号并对它进行译码,选中该地址码相对应的存储单元,以便对该单元进行读/写操作。存储器地址译码有单译码与双译码两种方式。7/23/202311(2)双译码
在双译码结构中,将地址译码器分成行译码器(又叫X译码器)和列译码器(又叫Y译码器)两部分,行列选择线交叉处即为所选中的内存单元,这种方式的特点是译码输出线较少。(1)单译码
单译码方式又称字结构,全部地址码只用一个电路译码,译码输出的选择线直接选中对应的存储单元。这一方式需要的选择线数较多,只适用于容量较小的存储器。7/23/202312译码器A5A4A3A2A1A06301存储单元64个单元行译码A2A1A0710列译码A3A4A501764个单元单译码双译码地址译码电路单译码结构(线形译码)双译码结构(矩阵译码)双译码可简化芯片设计主要采用的译码结构7/23/202313例如假定地址信号为10位单译码方式:2n=1024根译码输出线。双译码方式:分成两组,每组5位,则行译码后的输出线为25=32根;列译码输出线也为25=32根;共64根译码输出线。容量较大的存储器系统,一般都采用双译码方式。7/23/2023144.片选与读/写控制电路
片选信号用以实现存储器芯片的选择。当片选信号有效时,才能对其进行读/写操作。在选择存储单元时,要先进行片选,再在芯片中选择与地址相应的存储单元。片选信号一般由地址译码器的输出及一些控制信号来形成。
读/写控制电路则用来控制对芯片的读/写操作。7/23/202315一个大容量存储器系统往往由多个存储器芯片组成,具体访问哪一个存储器芯片,则由片选控制,所以又分为片内译码和片外译码。当片选信号有效时,才可以对该芯片进行读写操作,通过对系统高位地址线的译码来选中其中的存储芯片。7/23/2023165.I/O电路
I/O电路位于系统数据总线与被选中的存储单元之间,用来控制信息的读出与写入。必要时,还可包含对I/O信号的驱动及放大处理功能。
7/23/2023176.其它外围电路集电极开路、三态输出缓冲器、刷新操作的控制电路等
7/23/2023184.1.3存储器的性能指标1、存储器容量存储器容量是指存储器所有存储单元的数量,即字节数。或可以容纳的二进制信息总量,即存储信息的总位(bit)数。2、存取速度存储器的速度直接影响计算机的速度。存取速度可用存取时间和存储周期这两个时间参数来衡量。3、可靠性存储器的可靠性用MTBF(MeanTimeBetweenFailures)平均故障间隔时间来衡量。4、功耗存储器芯片正常工作时所消耗的电能,可用某个存储单元或整个芯片的功耗来表示。7/23/2023194.2.1静态RAM(SRAM)1.基本存储单元静态RAM的基本存储单元是由两个增强型的NM0S反相器交叉耦合而成的触发器。每个基本的存储单元由六个MOS管构成,所以,静态存储电路又称为六管静态存储电路。4.2读写存储器RAM读写存储器分为静态RAM与动态RAM两种。7/23/202320T1-T6构成一个基本存储单元存储一位二进制信息.T1和T2扭接,组成触发器。T3和T4接成有源负载,构成双稳:T1导通则T2截止,T2导通则T1截止.读出时,可从A点获取所保存的信息.写入时,将相反的信号从A.B两点同时输入,建立新的稳态.T5,T6为该单元的行选通管T7,T8为该单元的列选通管静态RAM的基本存储单元典型的静态RAM芯片T1T2T3T4ABT5T6T7T87/23/202321静态RAM的基本存储单元读出时,行选使T5导通,列选使T7导通,将A点(Q端)存储的电平经T5,T7送上数据总线。7/23/202322静态RAM的基本存储单元6116(2KB×8位)、6264(8KB×8位)、62256(32KB×8位)、628128(128KB×8位)等。
写入时,写入“1”,I/O端为高电平,T5,T7导通,A点为高电平使T2导通,I/O端为低电平,T6,T8导通,B点为低电平使T1截止,触发器记忆这种状态,存储信息“1”。
写入“0”时,
T1导通T2截止,触发器记忆这种状态,存储信息“0”。10I/OI/O7/23/202323存储容量为1024×418个引脚:10根地址线A9~A04根数据线I/O4~I/O1片选CS*读写WE*123456789181716151413121110VccA7A8A9I/O1I/O2I/O3I/O4WE*A6A5A4A3A0A1A2CS*GND2.静态RAM存储器芯片Intel21147/23/202324SRAM2114的功能工作方式CS*WE*I/O4~I/O1未选中读操作写操作100×10高阻输出输入A0-A9:10根地址信号输入引脚;I/O1-I/O4:4根数据输入/输出信号引脚;WE*:读/写控制信号输入引脚;CS*:片选信号输入引脚;+5V:电源;GND:地;7/23/2023253.SRAM芯片INTEL6264存储容量为8K×828个引脚:13根地址线A12~A08根数据线D7~D0片选CS1*、CS2读写WE*、OE*+5VWE*CS2A8A9A11OE*A10CS1*D7D6D5D4D3NCA12A7A6A5A4A3A2A1A0D0D1D2GND123456789101112131428272625242322212019181716157/23/202326SRAM6264的功能工作方式CS1*CS2WE*OE*D7~D0未选中未选中写操作读操作1×00×011××01××10高阻高阻输入输出7/23/2023274.2.2动态RAM(DRAM)1.动态RAM基本存储单元电路
动态RAM的基本存储单元,由一个MOS管T1和位于其栅极上的分布电容C构成。当栅极电容C上充有电荷时,表示该存储单元保存信息“1”。反之,当栅极电容上没有电荷时,表示该单元保存信息“0”。
7/23/202328由单管T1构成,信息存放在极间电容C1上,以其是否充电来表示两种信息状态(有电荷为1)T1还担负行选通任务.T2为列选通管.当T1.T2均选通时,数据线开通数据可以读出或写入.C2是数据线上的分布电容.1)读出时,T1.T2均导通,C1上存储的电荷经T1.T2送上数据线。2)写入时,T1.T2均导通,数据线上的信息对C1进行充放电动态RAM基本存储单元C1T2列选线C2单管动态存储电路T1字选线X..数据线D7/23/202329动态RAM基本存储单元C1T2列选线C2单管动态存储电路
动态RAM的刷新为保持电容中存储的电荷不丢失,必须对动态RAM不断进行读出和再写入。称为再生电路。T1字选线X..数据线D7/23/202330
芯片2164A的容量为64K×1位,即片内共有64K(65536)个地址单元,每个地址单元存放一位数据。需要16条地址线,地址线分为两部分:行地址与列地址。芯片的地址引脚只要8条,内部设有地址锁存器,利用多路开关,由行地址选通信号变低,把先出现的8位地址,送至行地址锁存器;由随后出现的列地址选通信号把后出现的8位地址送至列地址锁存器。这8条地址线也用于刷新(刷新时地址计数,实现一行行刷新)。2.动态RAM存储器芯片Intel2164A7/23/202331
64K存储体由4个128×128的存储矩阵构成。每个128×128的存储矩阵,有7条行地址和7条列地址线进行选择。7条行地址经过译码产生128条选择线,分别选择128行;7条列地址线经过译码也产生128条选择线,分别选择128列。7/23/202332
锁存在行地址锁存器中的7位行地址RA6-RA0同时加到4个存储矩阵上,在每个矩阵中都选中一行,则共有512个存储电路被选中,它们存放的信息被选通至512个读出放大器,经过鉴别、锁存和重写。锁存在列地址锁存器中的7位列地址CA6-CA0(地址总线上的A14-A8),在每个存储矩阵中选中一列,则共有4个存储单元被选中。最后经过1/4I/O门电路(由RA7与CA7控制)选中一个单元,可以对这个单元进行读写。7/23/202333
Intel2164A的外部结构:
Intel2164A是具有16个引脚的双列直插式芯片。•A0-A7:地址信号的输入引脚;•:行地址选通信号输入引脚;
•:列地址选通信号输入引脚;•:写允许控制信号输入引脚;•DIN:数据输入引脚;•DOUT:数据输出引脚;•VDD:+5V电源引脚;•Vss
:地;7/23/202334
只读存储器ROM,是一种非易失性的半导体存储器件。其中所存放的信息可长期保存,掉电也不会丢失,常被用来保存固定的程序和数据。在一般工作状态下,ROM中的信息只能读出,不能写入。对可编程的ROM芯片,可用特殊方法将信息写入,该过程被称为“编程”。对可擦除的ROM芯片,可采用特殊方法将原来信息擦除,以便再次编程。4.3只读存储器ROM7/23/202335掩膜式ROM一般由生产厂家根据用户的要求定制的。4.3.1掩膜式ROM01101010例:4ⅹ4由二次光刻版图形掩模所决定的,一旦芯片制成后,用户是无法变更其结构的。1001掩膜式ROM是存储信息”1’’的位没有MOS管而存储信息”0’’的位有MOS管11007/23/202336
出厂时,所有存储单元的熔丝都是完好的。编程时,通过字线选中某个晶体管。若准备写入1,则向位线送高电平,此时管子截止,熔丝将被保留;若准备写入0,则向位线送低电平,此时管子导通,控制电流使熔丝烧断。换句话说,所有存储单元出厂时均存放信息1,一旦写入0使熔丝烧断,就不可能再恢复。4.3.2可编程的PROM位线接数据线+5V掩膜式ROM是存储信息”1’’的位没有MOS管,而存储信息”0’’的位有MOS管PROM则可通过编程使其相应位有管或无管。有管读出时为高电平。7/23/2023371.基本存储单元电路可擦除可编程的ROM又称为EPROM。这种EPROM电路在N型的基片上扩展了两个高浓度的P型区,分别引出源极(S)和漏极(D),在源极与漏极之间有一个由多晶硅做成的栅极,但它是浮空的,被绝缘物SiO2所包围。出厂时浮空栅极上没有电荷,管子内没有导电沟道,源极与漏极之间不导电,此时表示该存储单元保存的信息为“1”;4.3.3可擦除可编程序的EPROM源极漏极7/23/202338要写入时,则在D和S之间加上25V的高压,另外加上编程脉冲(其宽度约为50ms),所选中的单元在这个电源作用下,D和S之间被瞬时击穿,就会有电子通过绝缘层注入到硅栅,当高压电源去除后,因为硅栅被绝缘层包围,故注入的电子无处泄漏走,硅栅就为负,于是就在N基体上形成了导电沟道,从而使EPROM单元导通,输出为“0“(或”1“)。
-----+++++7/23/202339如果要清除存储单元中所保存的信息,就必须设法将其浮动栅上的负电荷释放掉。当用一定波长的紫外光照射浮动栅时,负电荷便可以获取足够的能量,摆脱SiO2的包围,以光电流的形式释放掉,源极与漏极之间不导电。恢复保存的信息为“1”的状态。该单元又可重新编程。
EPROM存储器芯片,在其上方有一个石英玻璃的窗口,紫外线正是通过这个窗口来照射其内部电路而擦除信息的,一般擦除信息需用紫外线照射l5-20分钟。-----+++++石英玻璃窗7/23/2023402.EPROM芯片Intel2716
Intel2716是一种2K×8的EPROM存储器芯片,双列直插式封装,24个引脚。其它的典型芯片有Intel2732、
Intel2764、
Intel27256等。芯片的内部结构•存储阵列;存储阵列由2K×8个浮动栅MOS管构成;•7位行地址译码器;•4位列地址译码器;•输出允许、片选和编程逻辑;•数据输出缓冲器;
7/23/202341存储容量为2K×824个引脚:11根地址线A10~A08根数据线DO7~DO0片选/编程CE*/PGM读写OE*编程电压VPPVDDA8A9VPPOE*A10CE*/PGMDO7DO6DO5DO4DO3123456789101112242322212019181716151413A7A6A5A4A3A2A1A0DO0DO1DO2Vss编程脉冲(2)芯片的外部结构7/23/202342(3)EPROM2716的功能工作方式CE*/PGMOE*VCCVPPDO7~DO0待用1×+5V+5V高阻读出00+5V+5V输出读出禁止01+5V+5V高阻编程写入正脉冲1+5V+25V输入编程校验00+5V+25V输出编程禁止01+5V+25V高阻7/23/202343(4)EPROM芯片2764存储容量为8K×828个引脚:13根地址线A12~A08根数据线D7~D0片选CE*编程PGM*读写OE*编程电压VPPVppA12A7A6A5A4A3A2A1A0D0D1D2GNDVccPGM*NCA8A9A11OE*A10CE*D7D6D5D4D3123456789101112131428272625242322212019181716157/23/202344
电可擦除可编程序的ROM也称为EEPROM即E2PROM。其工作原理与EPROM类似,在E2PROM中,漏极上面增加了一个隧道二极管,它在第二栅极与漏极之间的电压VG的作用下,可以使电荷通过它流向浮动栅;若VG的极性相反也可以使电荷从浮动栅流向漏极,所用的电流是极小的。擦除可以按字节分别进行。字节的编程和擦除都只需要10ms,可以进行在线的编程写入。常用的典型芯片有:2816/2864等
4.3.4电可擦除可编程序的EEPROM7/23/202345应用特性:(1)对硬件电路没有特殊要求,编程简单。(2)采用+5V电源擦写的EEPROM,通常不需 要设置单独的擦除操作,可在写入过 程中自动擦除。(3)EEPROM器件大多是并行总线传输的
典型的EEPROM芯片
2816.2817(2K×8)2864(8K×8)并行
AT24C01(64×8)AT24C16(2K×8)串行电可擦除可编程的ROM(E2PROM)7/23/2023464.3.5快擦型存储器(F1ashMemory)
快擦型存储器具有EEPROM的特点,又可在计算机内进行擦除和编程,它的读取时间与DRAM相似,而写时间与磁盘驱动器相当。快擦型存储器操作简便,编程、擦除、校验等工作均已编成程序,可由配有快擦型存储器系统的中央处理机予以控制。
7/23/202347快擦型存储器可替代EEPROM,在某些应用场合还可取代需要配备电池后援的SRAM系统,使用快擦型存储器后可省去电池。快擦型存储器的非易失性和快速读取的特点,能满足固态盘驱动器的要求。同时,可替代便携机中的ROM,以便随时写入最新版本的操作系统。快擦型存储器还可应用于MP3、U盘、各种仪器设备以及计算机的外部设备中。典型的芯片有:27F256/28F016/28F020等。
7/23/202348
CPU对存储器进行读写操作,首先要由地址总线给出地址信号,然后要发出相应的读/写控制信号,最后才能在数据总线上进行信息交流。4.4存储器芯片扩展与CPU的连接7/23/2023494.4.1存储芯片与CPU的连接1.存储芯片的数据线2.存储芯片的地址线3.存储芯片的片选端4.存储芯片的读写控制线7/23/202350在连接中要考虑的问题有以下几个方面:
1.CPU总线的负载能力;
2.CPU的时序和存储器的存取速度之间的配合问题;
3.存储器的地址分配和片选问题;
内存通常分为RAM和ROM两大部分。而RAM又分为系统区和用户区,用户区又要分成数据区和程序区。ROM的分配也类似,所以内存的地址分配是一个重要的问题。单片存储器芯片的容量是有限的,通常要由许多片才能组成一个存储器,即如何产生片选信号的问题。4.控制信号的连接;
CPU在与存储器交换信息时,通常有以下几个控制信号:
(),,以及WAIT信号。这些信号如何与存储器要求的控制信号相连,以实现所需的控制功能。7/23/202351计算机的内存一般要求容量很大,单片存储器芯片不能满足需求,需要用到多片芯片的连接与扩展。存储器芯片扩展的方法有以下两种。
4.4.2存储器芯片的扩展1.存储器芯片的位扩充2.存储器芯片的字扩充7/23/2023521.存储器芯片的位扩充若芯片的数据线正好8根:一次可从芯片中访问到8位数据(一个字节)全部数据线与系统的8位数据总线相连若芯片的数据线不足8根如2114(1K×4)一次不能从一个芯片中访问到8位数据利用多个芯片扩充数据位(两片2114组成一个字节,8片2164构成64K×8的存储器)这个扩充方式简称“位扩充”7/23/2023532114(1)A9~A0I/O4~I/O1片选D3~D0D7~D4A9~A02114(2)A9~A0I/O4~I/O1CECE多个位扩充的存储芯片的数据线连接于系统数据总线的不同位数其它连接都一样这些芯片应被看作是一个整体常被称为“芯片组”两片2114扩充成1K×8的存储器同时选中两片2114的同一个地址单元,分别读写低4位和高4位7/23/2023542.存储器芯片的字扩充存储系统常需利用多个存储芯片扩充容量,也就是扩充了主存储器地址范围这种扩充简称为“地址扩充”或“字扩充”进行“地址扩充”,需要利用存储芯片的片选端对多个存储芯片(组)进行寻址这个寻址方法,主要通过将存储芯片的片选端与系统的高位地址线相关联来实现7/23/202355例:
用2K×8的2716存储器芯片组成8K×8的存储器系统。由于每个芯片的字长为8位,满足存储器系统的字长要求。但每个芯片容量为2KB,故需用4片2716进行字扩充。000110110000H-07FFH0800H-0FFFH1000H-17FFH1800H-1FFFH芯片的地址引脚直接接CPU的低位地址引脚输出允许与CPU的RD接数据输出与CPU的数据引脚连接CPU的高位地址经译码接片选M/IO接译码器片选7/23/202356地址码A15…A13
A12A11A10A9…A0地址范围芯片编号0…00000…0┇0…00011…10000H┇07FFH2716-10…00100…0┇0…00111…10800H┇0FFFH2716-20…01000…0┇0…01011…11000H┇17FFH2716-30…01100…0┇0…01111…11800H┇1FFFH2716-4根据硬件连线图存储器的地址分配范围如下:
7/23/2023573.同时进行位扩充与字扩充
在有些情况下,存储器芯片的字长和容量均不符合存储器系统的要求,需要用多片存储器芯片同时进行位扩充和字扩充,以满足系统的要求。例3用1K×4的2114芯片组成2K×8的存储器系统。7/23/202358例:
一个存储器系统包括2KRAM和8KROM,分别用1K×4的2114芯片和2K×8的2716芯片组成。要求ROM的地址从1000H开始,RAM的地址从3000H开始。试完成硬件连线及相应的地址分配表。
0100111001011101101111000H-17FFH1800H-1FFFH2000H-27FFH2800H-2FFFH3000H-33FFH3800H-3BFFH7/23/2023594.4.3译码和译码器译码:将某个特定的“编码输入”翻译为唯一“有效输出”的过程译码电路可以使用门电路组合逻辑译码电路更多的是采用集成译码器常用的2:4译码器:
74LS139常用的3:8译码器:74LS138常用的4:16译码器:74LS1547/23/202360
地址译码器常用74LS138,它的引脚和功能表如图所示。
74LS138有三个使能端G1=1
、G2A=0
和G2B=0;
3个译码输入端C、B、A决定8个输出端的状态。12345678910111213141516ABCG1Y7GNDY6Y5Y4Y3Y2Y1Y0Vcc74LS138引脚图G2BG2AY0Y1Y2Y3Y4Y5Y6Y7G1G2BG2ACBA74LS138原理图7/23/20236174LS138的功能表片选输入编码输入输出G1G2AG2BCBAY7*~Y0*10000011111110(仅Y0*有效)00111111101(仅Y1*有效)01011111011(仅Y2*有效)01111110111(仅Y3*有效)10011101111(仅Y4*有效)10111011111(仅Y5*有效)11010111111(仅Y6*有效)11101111111(仅Y7*有效)非上述情况×××11111111(全无效)
7/23/2023621.全译码全译码:所有的系统地址线均参与对存储 单元的译码寻址,包括:片内译码:低位地址线对芯片内各存储单元的 译码寻址。片选译码:高位地址线对存储芯片的译码寻址采用全译码,每个存储单元的地址都是唯一的,不存在地址重复。译码电路可能比较复杂、连线也较多。7/23/202363全译码示例A15A14A13A16CBAG1138
2764A19A18A17A12~A0CEY6G2AG2BIO/M1C000H1DFFFH全0全1000
1
110000
1
110地址范围A12~A0A19A18A17A16A15A14A137/23/2023642.部分译码部分译码:只有部分高位地址线参与对存储 芯片的译码每个存储单元将对应多个地址(地址重复),需要选取一个可用地址可简化译码电路的设计但系统的部分地址空间将被浪费7/23/202365部分译码示例138A17
A16A11~A0A14
A13A12(4)(3)(2)(1)2732273227322732CBAG1G2AG2BIO/MCECECECEY0Y1Y2Y3A19~A15A14~
A12A11~A0一个可用地址1234××10×××10×××10×××10×000001010011全0~全1全0~全1全0~全1全0~全120000H~20FFFH21000H~21FFFH22000H~22FFFH23000H~23FFFH7/23/2023663.线选译码线选译码:只用少数几根高位地址线进行芯片的译码,且每根负责选中一个芯片(组)虽构成简单,但地址空间严重浪费必然会出现地址重复(一个存储单元对应多个存储地址)地址空间不连续一个存储地址可能会对应多个存储单元多个存储单元共用的存储地址不应使用7/23/202367线选译码示例A14A12~A0A13(1)2764(2)2764
CECEA19~
A15A14A13A12~A0一个可用地址12××××××××××1001全0~全1全0~全104000H~05FFFH02000H~03FFFH切记:
A14A13=00的情况不能出现00000H~01FFFH的地址不可使用7/23/202368
4.组合电路译码电路
A15A14A13
A12A11
100
0
0
Y0
0
1
Y1
1
0
Y2
1
1
Y3
8000H~87FFH8800H~8FFFH9000H~97FFH9800H~9FFFH这种设计方法浪费硬件资源,Y4-Y7状态不确定!7/23/2023695.二级译码电路
A15A14A13
A12A11
1
0
0
0
0
Y0
0
1
Y1
1
0
Y2
1
1
Y3
8000H~87FFH8800H~8FFFH9000H~97FFH9800H~9FFFH7/23/2023701.设计一个存储器系统,CPU为8088,RAM为16K,ROM为2K;地址从4000H开始,ROM在高位地址,RAM在低位地址,现有两种芯片:2K×8的EPROM芯片2716和8K×8的静态RAM芯片6264。⑴画出硬件连接图⑵写出各芯片的地址范围。7/23/202371目前计算机使用的内存主要为动态RAM,它具有价格低,容量大的特点,但由于是用电容存储信息,所以存取速度难以提高,在半导体存储器中,双极型静态RAM的存取速度可与CPU速度处于同一数量级,但这种RAM价格较贵,功耗大,集成度低,要达到与动态RAM相同的容量时,其体积就比较大,也就不可能将存储器都采用静态RAM。因此就产生出一种分级处理的办法,即在主存和CPU之间加一个容量相对小的双极型静态RAM作为高速缓冲存储器(简称Cache)4.5高速缓冲存储器Cache7/23/202372在CPU和存储器之间放置高速缓冲存储器,组成由高速缓冲存储器和主存构成一个“两级”的存储系统。CPU主存Cache“两级”的存储系统4.5.1主存-Cache的层次结构7/23/202373
对大量典型程序的运行情况分析结果表明,在一个较短的时间内,由程序产生的地址往往集中在存储器逻辑地址空间的很小范围内。数据的这种集中倾向虽不如指令明显,但对数组的存储和访问以及工作单元的选择也可以使存储器地址相对集中。7/23/202374
这种对局部范围的存储器地址频繁访问,而对此范围以外的地址则访问甚少的现象,称为程序访问的局部性。根据程序的局部性原理,在主存和CPU之间设置Cache,把正在执行的指令地址附近的一部分指令或数据的副本从主存装入Cache中,供CPU在一段时间内使用,是完全可行的。7/23/202375
管理这两级存储器的部件为Cache控制器(82385),CPU和主存之间的数据传输都必须经过Cache控制器,Cache控制器将来自CPU的数据读写请求,转向Cache存储器,如果数据在Cache中,则CPU对Cache进行操作,称为一次命中。命中时,CPU从Cache中读(写)数据。由于Cache速度与CPU速度相匹配,因此不需要插入等待状态。目前,大容量的Cache存储器使CPU访问Cache的命中率高达90%至99%,大大提高了CPU访问数据的速度,提高了系统的性能。Cache控制器7/23/202376
若数据块不在Cache中,称为一次失败(不命中)。如果是做读操作,则CPU需从主存读取信息的同时,Cache替换部件把该地址所在的那块存储内容从主存拷贝到Cache中。如果是做写操作,很多计算机系统只向主存写入信息,不必同时把这个地址单元所在的整块内容调入Cache存储器。这时,CPU必须在其机器周期中插入等待周期。7/23/202377
对典型程序的运行情况分析结果表明,存在着对局部范围的存储器地址访问频繁,而对此范围以外的地址则访问甚少的现象,称为程序访问的局部性。设置Cache可将正在执行的指令地址附近的一部分指令或数据从主存装入Cache中,供CPU在一段时间内使用,可提高指令执行的速度。
4.5.2Cache的基本工作原理7/23/202378Cache存储器存放主存中的一部分程序块和数据块的副本,是以块为单位的存储方式。每一块加有一个标记,指明它是主存的哪一块副本,Cache的容量和块的大小是影响Cache效率的重要因素,常用“命中率”来测量Cache的效率。在Pentum以后的CPU中,集成了数据Cache和指令Cache,与主机板上的Cache存储器形成两级Cache结构。第一、二级Cache结合,提高了命中率,加快了处理速度,使CPU对Cache的操作命中率高达98%以上。
7/23/202379Cache作为存储器,具有两种基本操作,即读操作和写操作。
CPU读操作时分两种情形:一是需要的数据已在Cache存储器中,只需直接访问Cache存储器;另一种是需要的数据未装入Cache,CPU需从主存读取信息。同时,Cache替换部件把该地址所在的存储内容从主存拷贝到Cache中。
Cache的基本操作7/23/202380CPU写操作时也分两种情形:一是命中时,将新的内容写入Cache存储器中,并同时写入主存,保证主存和副本内容一致,这种方法称写直达法或称通过式写(简称通写法)。考虑到写入的数据往往是中间结果,每次都写入主存很浪费时间,于是设计成每次只向Cache写入,并用标志加以注明,直到Cache中被写过的块要被新进入Cache的信息块取代时,才一次性写回主存。这种方法称为回写法。
7/23/202381地址映象:为了把信息放到Cache中,必须应用某种函数把主存地址映象到Cache中定位。地址变换:当信息按这种映象关系装入Cache后,系统在执行程序时,应将主存地址变换为Cache地址,这个变换过程叫做地址变换
4.5.3地址映象7/23/202382Cache中的一个存储块要与主存中的若干个存储块相对应,即若干个主存地址将映象成同一个Cache地址。根据不同的地址对应方法,地址映象的方式通常有:
直接映象全相联映象组相联映象7/23/2023831.直接映象每个主存地址映象到Cache中的一个指定地址的方式称为直接映象。在直接映象方式下,主存中存储单元的数据只可调入Cache中的一个固定位置,如果主存中另一个存储单元的数据也要调入该位置,则将发生冲突。直接映象函数可定义为:
j=imod2N
j是Cache中的块号;i是主存中的块号。Cache被分成2N块,主存被分成同样大小的2M块。7/23/202384直接映象是一种最简单的地址映象方式,它的地址变换速度快,而且不涉及其它两种映象方法中的替换策略问题。缺点是不够灵活,这使得Cache存储空间得不到充分利用,并降低了命中率。尤其是当程序往返访问两个相互冲突的块中的数据时,Cache的命中率将急剧下降。7/23/202385在这种映象方式中,主存的第0块,第2N块,…
第2N+l块,…,只能映象到Cache的第0块,而主存的第1块,第2N+l块,第2N+1+1块,…,只能映象到Cache的第1块,…依次类推。7/23/202386只需判断主存地址中的某些字段即可确定所需字块是否已在CACHE存储器中例如:一个8KB的Cashe,共有8个块,每个块有1KB。这时Cache控制器中的地址映射表存放了主存中的8个映射地址,映射地址只与主存地址的高位地址A19-A13对应,可根据主存地址的A12-A10来查表,以确定该快是否已在Cache存储器中。查找时只需比较一个映射地址即可确定是否命中。A12-A10=000则一定存放在Cashe的第0块!只需比较表中的第0号映射地址就可以!A19-A137/23/2023872.全相联映象全相联映象方式是最灵活但成本最高的一种方式,它允许主存中的每一个字块映象到Cache存储器的任何一个字块位置上,也允许从确实已被占满的Cache存储器中替换出任何一个旧字块。当访问一个块中的数据时,块地址要与Cache块表中的所有地址标记进行比较以确定是否命中。在数据块调入时,存在着一个比较复杂的替换策略问题,即决定将数据块调入Cache中什么位置,将Cache中哪一块数据调出到主存。确定是否命中需要比较地址映射表中的全部8个地址7/23/202388例如:一个8KB的Cashe,共有8个块,每个块有1KB。这时Cache控制器中的地址映射表存放了主存中的8个映射地址,映射地址保存了调入该块的主存地址中高位地址的A19-A10,访存时根据主存地址的A19-A10与表中的8个映射地址逐个比较,以确定该块是否已在Cache存储器中。7/23/202389全相联方法只有在Cache中的块全部装满后才会出现块冲突,所以块冲突的概率低,Cache的利用率高。但全相联Cache中块表查找的速度慢,由于Cache的速度要求高,因此全部比较和替换策略都要用硬件实现,控制复杂,实现起来也比较困难。这是一个理想的方案,但实际上由于它的成本太高而不能采用。7/23/2023903.组相联映象组相联映象方式是全相联映象和直接映象的一种折衷方案。这种方法将存储空间分成若干组,各组之间是直接映象,而组内各块之间则是全相联映象。在组相联映象方式下,主存中存储块的数据可调入Cache中一个指定组内的任意块中。它是上述两种映象方式的一般形式,如果组的大小为1时就变成了直接映象;如果组的大小为整个Cache的大小时就变成了全相联映象。7/23/202391
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 湖南电气单招试题及答案
- 厦门兴才职业技术学院《临床医学概要》2025-2026学年期末试卷
- 江西师范大学《临床康复》2025-2026学年期末试卷
- 萍乡学院《经济社会统计》2025-2026学年期末试卷
- 萍乡学院《营销传播创意与策划》2025-2026学年期末试卷
- 厦门华天涉外职业技术学院《旅游接待业》2025-2026学年期末试卷
- 阜阳科技职业学院《国际企业管理》2025-2026学年期末试卷
- 赣南师范大学《法学概论》2025-2026学年期末试卷
- 徽商职业学院《秘书理论》2025-2026学年期末试卷
- 长春数字科技职业学院《世界经济概论》2025-2026学年期末试卷
- 神经刺激治疗患者知情同意书模板
- 红楼梦第五回赏析
- 工程行业合作方案(3篇)
- DB34∕T 3839-2021 高疲劳性能高模量沥青混合料设计与施工技术规范
- 网络餐饮监管培训课件
- 夜航船全书讲解
- 厂房施工管理办法
- 吉林大学第二医院招聘笔试真题2024
- 2025-2030中国钢绞线行业产销状况与投资效益预测报告
- 研究生学位论文匿名评审规定
- T/CNFAGS 16-2024绿色甲醇分级标准(试行)
评论
0/150
提交评论