工信版(中职)计算机原理模块五教学课件

上传人:无*** 文档编号:253063646 上传时间:2024-11-28 格式:PPT 页数:64 大小:1.27MB
收藏 版权申诉 举报 下载
工信版(中职)计算机原理模块五教学课件_第1页
第1页 / 共64页
工信版(中职)计算机原理模块五教学课件_第2页
第2页 / 共64页
工信版(中职)计算机原理模块五教学课件_第3页
第3页 / 共64页
资源描述:

《工信版(中职)计算机原理模块五教学课件》由会员分享,可在线阅读,更多相关《工信版(中职)计算机原理模块五教学课件(64页珍藏版)》请在装配图网上搜索。

1、,,单击此处编辑母版标题样式,,单击此处编辑母版文本样式,,第二级,,第三级,,第四级,,第五级,,,*,YCF,(中职)计算机原理模块五教学课件,模块5 存储器系统,任务1 存储器概述,,5.1.1 存储器的分类,,5.1.2 存储器的常用性能指标,,5.1.3 存储系统的层次结构,,任务2 半导体存储器,,5.2.1 内存储器,,5.2.2 随机存储器,,5.2.3 只读存储器,下一页,,,模块5 存储器系统,5.2.4 内存条,,5.2.5 内存储器的主要性能指标,,任务3 16位微处理器的存储管理,,5.3.1 分段存储管理,,5.3.2 存储管理的相关术语,,任务4 新型存储

2、器技术,,5.4.1 多体交叉存储器,下一页,上一页,,,模块5 存储器系统,5.4.2 高速缓冲存储器(cache),,5.4.3 虚拟存储器,上一页,,,任务1存储器概述,本模块主要介绍半导体存储器的基础知识,包括微机系统中常用存储器的分类、性能指标及层次结构;半导体存储器的基本结构、工作原理及与CPU的连接等内容;最后介绍了微机系统中的辅助存储器和新型存储器技术。,,通过本模块的学习,读者应了解存储器的分类和层次结构,掌握常用的RAM和ROM基本结构、原理和特点;灵活运用存储器与CPU进行连接和扩展;了解新型存储器技术的特性,并侧重其应用。,下一页,返回,,,任务1存储器概述,存储器是计

3、算机中用来存储信息的部件。有了存储器计算机才具有“记忆”功能,才能把要执行的程序、数据和处理结果存储在计算机中,使计算机能自动连续地工作。因此,存储器是微机系统不可缺少的组成部分,是计算机中各种信息的存储和交流中心。在运行程序时,CPU自动连续从存储器中取出指令并执行指令规定的操作,计算机每完成一条指令,至少要执行一次访问存储器的操作,并把处理结果存储在存储器中。,,5.1.1存储器的介类,,1.按存储介质分类,,存储介质是指存储二进制信息的物理载体,这种载体具有表现两种相反物理状态的能力,存储器的存取速度就取决于这两种物理状态的改变速度。目前使用的存储介质主要有半导体器件、磁性材料和光学材料

4、。,下一页,返回,上一页,,,任务1存储器概述,(1)用半导体器件做成的存储器称为半导体存储器。从制造工艺的角度又把半导体存储器分为双极型和MOS型等。,,(2)用磁性材料做成的存储器称为磁表面存储器,如磁盘存储器和磁带存储器。,,(3)用光学材料做成的存储器称为光表面存储器,如光盘存储器。,,2.按读/写功能分类,,存储器按读/写功能分为只读存储器和随机存取存储器。,,(1)只读存储器(Read Only Memory , ROM)。如果存储器所存储的内容固定不变,即只能读出不能写入,称为只读存储器。一般用来存放微机的系统程序,如系统管理程序、监控程序等。,下一页,返回,上一页,,,任务1存

5、储器概述,(2)随机存取存储器(Random Access Memory , RAM)。既能读出又能写入的存储器称为随机存取存储器,又称读/写存储器。主要存放各种输入、输出数据及中间结果,并可与外存储器交换信息以及作为堆栈使用。,,3.按作用分类,,根据存储器在微机系统中所起作用可分为主存储器(又称内存储器,简称内存)、辅助存储器(又称外存储器,简称外存)和高速缓冲存储器(Cache)等。,,(1)主存储器。在主机内部,存放当前正在运行的程序和数据。主存储器与CPU及各种接口电路一起构成微机主机,CPU通过指令可直接访问主存储器。计算机要解决的问题越复杂,所要求的主存容量就越大,对主存储器的读

6、写速度要求也越高。因此,主存储器的存取速度要和CPU的处理速度相匹配。现代微机大多采用半导体存储器作为主存储器。,下一页,返回,上一页,,,任务1存储器概述,(2)辅助存储器。属于计算机的外部设备,用来存储CPU当前操作暂时用不到的程序或数据,它存储的信息在CPU需要时可通过接口电路成批输入到主存储器后供CPU处理,CPU不能直接用指令对辅存进行读写操作。其特点是存储容量大,价格便宜,所存储的信息断电后不会丢失,但速度较慢。现代微机常使用软盘、硬盘和光盘作为辅助存储器,存放系统程序和大型数据文件及数据库。,,(3)高速缓冲存储器。是计算机系统中的一个高速小容量存储器,位于CPU和内存之间。现代

7、微机中,为提高计算机的处理速度,利用高速缓存来暂存CPU正在使用的指令和数据,可以加快信息传递的速度。目前,高速缓存主要由高速静态RAM组成。,下一页,返回,上一页,,,任务1存储器概述,5.1.2存储器的常用性能指标,,1.存储容量,,存储器可以存储的二进制信息总量称为存储容量。它是存储器的一个重要指标,容量越大,意味着所能存储的二进制信息越多。存储器由许多存储单元组成,每个存储单元可存放8位二进制信息,其位数称为存储单元的长度。,,存储容量一般可表示为存储容量=存储器单元数x每单元二进制位数。,,存储容量通常以字节(8位二进制数)为单位,用B ( Byte)表示。如一个存储器有4 096个

8、单元,每个单元可存放8位二进制信息,则存储容量为4096 x 8,也就是4 096 B。,,大容量存储器用千字节(KB)、兆字节(MB)、吉字节(GB )、太字节(TB)等表示。其换算关系如下。,下一页,返回,上一页,,,任务1存储器概述,1 KB=2,10,R=1024 B 1 MB=2,20,R=1024KB,,1 GB=2,30,B=1024 MB 1 TB=2,40,B=1024 GB,,2.存取速度,,存储器的存取速度可用存取时间和存取周期来衡量。,,(1)存取时间。指启动一次存储器操作到完成该操作所用的时间。具体说是从存储器接收到寻址地址开始到取出或存入数据为止所需

9、时间。手册上给出这个参数的上限值,称为最大存取时间。,,(2)存取周期。指连续两次独立的存储器操作最小时间间隔。存取周期略大于存取时间,其差别与存储器的物理实现有关。,下一页,返回,上一页,,,任务1存储器概述,存取速度的度量单位通常采用纳秒(ns)。目前高速存储器的存取速度已小于20ns。存取时间越小,存取速度就越快。,,3.价格,,存储器价格常用每位价格来衡量。设存储器容量为S,总价格为C,则每位价格为P=S/C。它不仅包含了存储元件本身价格,也包括为该存储器操作服务的外围电路价格。一般来说,主存储器价格较高,辅助存储器价格则低得多。,,存储器总价格正比于存储容量,反比于存取速度。速度较快

10、的存储器,其价格也较高,容量也不可能太大。因此,容量、速度、价格3个指标之间是相互制约的。,,衡量存储器性能的其他指标还有体积、质量、品质等,用户在设计和选用存储器时要综合考虑这些因素,根据实际需要全面衡量,尽可能满足主要要求并兼顾其他,尽量提高性能价格比。,下一页,返回,上一页,,,任务1存储器概述,5.1.3存储系统的层次结构,,现代微机系统对存储器的基本要求是容量大、速度快和成本低,但要想在一个存储器中同时兼顾这三方面的要求是很困难的。,,(1)首先要考虑存储系统的容量。容量要求很大的存储系统仅仅采用单一结构的存储器是无法满足要求的,至少需要两种存储器:主存储器和辅助存储器。使用速度较快

11、、容量不大的半导体存储器作为主存储器,而用容量极大、价格较便宜的磁带、磁盘、光盘作为辅助存储器。把CPU当前正在运行的程序和数据放在主存中,把暂时不用的程序和数据放在辅存中。程序执行过程中,不断把位于辅存中即将处理的信息调入主存,处理完毕的信息不断调出主存。,下一页,返回,上一页,,,任务1存储器概述,这个工作由计算机自动完成,即采用虚拟存储器技术。这种系统中,程序员面对的是一个既有主存速度,又有辅存容量的存储器整体,编程时可直接使用辅存容量的地址空间,而不必考虑主存的容量限制。虚拟存储技术较好地解决了存储系统的容量问题。,,(2)其次要考虑存储系统的速度。由于CPU处理指令和数据的速度比从主

12、存储器读取指令和数据的速度快,因此,主存储器读取速度成为整个系统的“瓶颈”。为解决存储速度问题,在存储系统结构上可采用高速缓冲存储器(Cache)。Cache的存取速度与CPU工作速度相当,容量较小,位于CPU和主存之间。它存放的内容是当前机器运行中最活跃的一部分信息,是主存中部分信息的副本。程序运行时,计算机自动把要执行的程序和数据从主存调入Cache,这样CPU只要访问Cache就可取得所需信息,只有当CPU所需信息不在Cache时才去访问主存。不断用新的信息更新Cache的内容就可使CPU大部分信息访问操作在Cache中进行,以减少对慢速主存的访问次数。,下一页,返回,上一页,,,任务1

13、存储器概述,为解决存储器的容量、速度、价格三者之间的矛盾,人们除了不断研制新的存储器件,改进存储性能外,还要从存储系统结构上研究更加合理的结构模式,形成存储系统的多级层次结构。把不同存储容量、存取速度和价格的存储器按层次结构组成多层存储器,并通过管理软件和辅助硬件有机组合成统一的整体,使所存放的程序和数据按层次分布在各种存储器中。,,目前,计算机存储系统通常采用3级层次结构,由高速缓冲存储器(Cache)、主存储器和辅助存储器组成,如,图5-1,所示。,下一页,返回,上一页,,,任务1存储器概述,图5-1,的存储系统多级层次结构由上向下分为3级,其容量逐渐增大,速度逐级降低,成本则逐次减少。整

14、个结构又可看成2个层次:分别是主存-辅存层次和Cache-主存层次。系统中每一种存储器都不再是孤立的存储器,而是一个有机的整体。它们在辅助硬件和操作系统的管理下,可把主存-辅存层次作为一个存储整体,形成的可寻址存储空间比主存储器空间大得多。由于辅存容量大,价格低,使得存储系统的整体平均价格降低。而Cache的存取速度可和CPU的工作速度相媲美,故Cache-主存层次可缩小主存和CPU之间的速度差距,从整体上提高存储器系统的存取速度。尽管C ache成本高,但由于容量较小,故不会使存储系统的整体价格增加很多。,下一页,返回,上一页,,,任务1存储器概述,综上所述,一个较大的存储系统由各种不同类型

15、的存储设备构成,这样的系统是一个具有多级层次结构的存储系统。该系统既有与CPU相近的速度,又有极大的容量,而价格又是较低的。可见,采用多级层次结构的存储器系统可有效解决存储器的速度、容量和价格之间的矛盾。,,返回,上一页,,,任务2半导体存储器,5.2.1内存储器,,内存储器是指微机系统中存放程序和数据的部件,是CPU能直接对其进行存取操作的部件,它由一组或多组具有数据存储功能以及能进行读写操作的大规模集成电路组成。把这种多个封装好的集成电路存储器芯片、电容、电阻等元器件都焊接在一小条印制电路板上而构成了大容量的内存储器部件。这种电路板又是被插在主板上的,所以称为微机硬件系统内的内存储器条。,

16、,在内存储器内主要是存放正在执行的程序和被处理的数据。根据存储信息的特点不同,内存储器又有两种基本的类型:一类是随机存储器(RAM),另一类是只读存储器(ROM)。,下一页,返回,,,任务2半导体存储器,5.2.2随机存储器,,随机存储器(Random Access Metnory,RAM)是一种既能读出也能写入的存储器,它适合于存放用户程序和数据,因为这类信息是经常变化的。RAM有如下3个特点。,,(1)可以读出,也可以写入。读出时并不损坏所存储的内容,只有在写入时才修改原来所存储的内容。,,(2)所谓随机存取,意味着存取任一单元所需的时间相同。存储单元排成二维阵列,就像通过X ,Y两个坐标

17、就能确定一个点那样。,,(3)当断电后,存储的内容立即消失,又称为NOVRAM( Non Volatile RAM)或NVRAM。,,RAM分为双极性RAM和MOS RAM两大类。,下一页,返回,上一页,,,任务2半导体存储器,1.双极性RAM,,双极性RAM由于它是以晶体管触发器作为基本存储元件,所以拥有存取速度快的优点。双极性RAM自身是晶体管触发器,使用的晶体管数量比MOS RAM用得多,从而也显现出它的诸多缺点,像集成度低(与MOS RAM比较)、功耗大,导致其成本也高。只有在对速度的需求超过了对成本的需求时,才会采用双极性RAM。像存储器系统中的Cache这种存储器就常采用双极性RA

18、M。,,2 .MOS RAM,,由MOS电路构成的RAM,又可分为DRAM ( Dynamic RAM)和SRAM ( Static RAM)两大类。DRAM的特点是高密度,SRAM的特点是高速度。,下一页,返回,上一页,,,任务2半导体存储器,1) SRAM ( Static RAM,静态随机存储器),,SRAM的运行速度非常快,像CPU内的一级、二级缓冲存储器就使用了SRAM,其运行频率与CPU的时钟同步。SRAM高速度的特点对提高系统性能非常有利,但价格较贵。,,由于静态随机存储器SRAM既可以用双极型电路,也可以用MOS电路的触发器来作存储元件,所以没有电容造成的刷新问题。只要有电源正

19、常供电,触发器就能稳定地存储数据。一旦写入数据信息,只要不断电,数据可以一直保持有效,且也不需要刷新。由于不再需要其他的特殊操作来保留存放在上面的数据,因此将其称为静态存储器。,,2 )DRAM ( Dynamic RAM,动态随机存储器),下一页,返回,上一页,,,任务2半导体存储器,DRAM采用MOS电路和电容作为其存储元件。DRAM比SRAM速度慢,但同时也比SRAM便宜得多,在容量上也可以做得更大,体积也更小,所以主存储器都采用DRAM。DRAM还用于显示卡、声卡、硬盘等设备中,充当设备缓冲存储器。,,DRAM采用MOS电路和电容作为其存储元件,由于电容会放电,所以需要定时充电以维持存

20、储内容的正确,这称为刷新。例如每隔2ms刷新一次,因此称之为动态存储器。,,由于DRAM具有高密度的特点,所以集成度的提高非常迅速。其集成度差不多以每3年增加4倍的速度发展着。与此同时,DRAM的性能也在不断提高。16 Kb DRAM的标准存取时间为200 ns,64 Kb的标准存取时间已提高到100 ns。这个速度与4 Kb SRAM相比还是较慢的,因为SRAM的存取时间为35 ns。,下一页,返回,上一页,,,任务2半导体存储器,CPU芯片的飞速发展使得RAM必须不断改进才能适应其发展的需要。CPU芯片由8位、16位发展到32位、64位,使CPU时钟频率由5 MHz,20 MHz继续向2.

21、 5 GHz , 3. 0 GHz推进。与这种时钟相适应的内存储器的操作速度为100ns,80ns,60ns,50 ns,甚至更快,才能满足需要。这些要求对SRAM来说很容易达到,但它的集成度不够高。为了适应扩大内存的需要,就必须加快DRAM的存储速度。通常是把动态DRAM芯片与CPU芯片的相辅相成的发展看做是促进VLSI技术发展的重要推动力。,,NVRAM是一种非易失性的随机读写存储器。它既能快速存取,在系统断电时又不会丢失数据。实际上,它是把SRAM的实时读写功能与EEPROM的可靠非易失功能综合在一起了。,下一页,返回,上一页,,,任务2半导体存储器,以Inte12004 NVRAM(1

22、984年产品)为例,它是一块4 Kb芯片,以512 x 8“字节宽”体系结构组成。其内部结构分为两部分:一部分是高速静态RAM阵列,另一部分是与之逐位对应(Bit-for-Bit )的非易失EEPROM备份阵列。,,系统正常工作时,CPU访问SRAM部分以完成快速读写。当系统断电或者正常关机时,芯片内部的数据保护电路测出电源电压降至4V时能立即关闭写入电路,而迅速地把SRAM的内容并行地转储到EEPROM中;电源电压恢复后,EEPRO M中的内容又自动放入SRAM阵列中。这种转储操作能可靠地进行10 000次。其非易失能力保证数据能存储10年以上。,下一页,返回,上一页,,,任务2半导体存储器

23、,5.2.3只读存储器,,只读存储器(Read-Only Memory, ROM)只允许读出原有的内容,而不能写入新内容。ROM能够永久地保存驻留在系统中的程序和数据。即使不接电源,其内保存的信息也不会改变。ROM通常用来存放那些固定不变、不需要修改的、控制计算机系统的监控程序和专用程序,如基本输入输出系统(BIOS)、汇编程序、各种专用程序(如调试程序、诊断程序等)等。ROM在断电之后,其内保存的信息不会丢失,一旦通电,它就能正常工作。,,常用的只读存储器又分成以下几类。,,1 .ROM,,一般由生产厂家把编好的程序固化在ROM中。成本低而适用于批量生产。,下一页,返回,上一页,,,任务2半

24、导体存储器,2 .PROM,,PROM是可编程只读存储器(Programmable Read-Only Memory),它与ROM的性能一样。存储的程序在处理过程不会丢失,也不会被替换。二者的区别仅是,这种PROM仅允许用户用自己编写的程序在PROM上进行一次烧制改写其中内容。因此PROM大都用于固化某些在使用中不需变更的程序或数据。从结构上说它是根本无法擦除的。目前PROM已不再常用。,,3. EPROM,,可擦除的ROM ( Erasable Programmable Read-Only Memory)即EPROM。这是一种可由用户编程并可擦除的ROM。存放在EPROM中的信息可以被擦除

25、,然后再写入,且能多次改写其中的内容,只是写入速度较慢。这种灵活性使EPROM得到了广泛应用,但也仅限于当成只读存储器用。,下一页,返回,上一页,,,任务2半导体存储器,这种EPROM存储器由于集成度高、成本低且在关掉电源后其内保存的信息不会丢失等特点而被广泛使用。,,4. EEPROM,,电可擦除可重写只读存储器(EEPROM或EZPROM)也叫“电擦除可编程只读存储器EEPROM”或EAROM,是电可擦除PROM或电可改写ROM。在实际使用中,EEPROM多用于写入的内容很少需要变动的情况,像在微机的基本输入输出系统(BIO时中,由于很少需要改动BIOS中的内容,大多采用EEPROM。多数

26、情况下需要的是以字节为单位的擦除和重写,而EEPROM在这方面就具有很大的优越性。,下一页,返回,上一页,,,任务2半导体存储器,5.闪速存储器,,闪速存储器(FlashMemory)是一种特殊类型的EEPROM类的存储器,是目前较理想的一类存储器,具有密度高、读写速度快、成本低和不易丢失的特点。传统的存储器只能满足上述这些要求中的一部分。闪速存储器又称为快擦写型存储器,可以用电擦除数据块,而不是用电擦除单个的存储单元。它能够实现RAM与ROM的所有功能。闪速存储器可像硬盘那样用来存放为系统设置的信息。与传统存储器相比,Flash的主要优点如下。,,(1)不易丢失性。与SRAM相比,Flash

27、不需后备电源来保持信息。,,(2)易更新性。与EEPROM相比,Flash的成本更低,密度和可靠性更高。,下一页,返回,上一页,,,任务2半导体存储器,5.2.4内存条,,内存条是微机系统用来存放程序和数据的实际存储器,主要有两种类型。,,(1)单边直插式存储器模块(Single Inline Memory Module,SIMM),早期的30线、72线的内存条都属于这种类型。,,30线内存条早年多用在80386系列微处理器上,其容量有256 KB ,1 MB和4MB不等。30线内存条可提供8位有效数据位。,,72线内存条多用在80486、早期的Pentium微处理器上,其容量有4MB,8MB

28、,16 MB和犯MB等,可提供犯位有效数据位。,下一页,返回,上一页,,,任务2半导体存储器,(2)双边直插式存储器模块(Double Inline Memory Module , DIMM ),像168线的SDRAM和184线的DDR SDRAM内存条都属于这种类型。,,市场上的DIMM内存条出现了两种标准,即普通的DIMM(也就是SDRAM,和新标准的DDR DIMM。,,SDRAM内存条有168(84x2面)个引脚,故而这种内存条又被称为168线的内存条。这种168线内存条的容量有128MB ,256MB ,512MB ,1GB等不同规格,可提供64位有效数据位。,,新标准的DDR SD

29、RMM则有184个引脚。184线内存条多与Pentium 4系列的微处理器配合使用。其容量有128 MB和256MB,512MB,1 GB ,2 GB等不同规格。DDR SDRAM可提供64位有效数据位。,下一页,返回,上一页,,,任务2半导体存储器,虽然SDRAM类的内存条和DDR SDRAM类的内存条的长度相同,而且其芯片的形状也几乎完全相同,但SDRAM的金手指处有两个缺口,而DDR SDRAM则只有一个缺口,这是辨别SDRAM和DDR SDRAM最简单有效的办法。,,图5-2,展示的是一款现代512MB DDR 400内存条。,,它是一种适用于台式机的DDR内存条,其容量为1 GB,金

30、手指184个引脚,其工作频率为400 MHz。,,图5-3,展示的是一款金士顿DDR2(双通道套装HyperX)内存条,它适用于台式计算机的内存储器,其容量为2 x2 048 MB =4 GB,它的工作频率为1 066 MHz。,下一页,返回,上一页,,,任务2半导体存储器,5.2.5内存储器的主要性能指标,,(1)内存储器容量。即内存储器所能容纳的字节总数。,,(2)存取速度。即从内存储单元中将二进制信息读到存储器数据寄存器中(或反之)所需的时间。,,(3)存储器的可靠性。用平均无故障时间的长短来表征,即两次故障之间的平均时间间隔。,,(4)性价比。性能与价格比值。,返回,上一页,,,任务3

31、 16位微处理器的存储管理,下面以8086微处理器的存储管理为例,介绍16位微处理器的存储管理技术。事实上,8086有20根地址线,可访问1MB(2,20,b =1 MB)存储空间,地址范围是00000 H ~ FFFFFH 。任意给定一个20位二进制数(5位十六进制数)地址,就可以访问1MB中的某个存储单元。,,5.3.1分段存储管理,,由于8086与地址相关的寄存器是16位(内部寄存器都是16位),算术逻辑部件ALU也只能进行16位计算,因此只能存放16位地址,其寻址范围也只能是64KB(2,16,b=64 KB)。为了形成20位地址,以便寻址1 MB存储空间,8086采用分段办法管理1

32、MB存储空间,即将1 MB存储空间分成若干个逻辑段,每个逻辑段最大为64 KB。,下一页,返回,,,任务3 16位微处理器的存储管理,8086把内存分成4种逻辑段,即代码段、数据段、堆栈段和附加段,如,图5-4,所示。各段可连续或不连续排列,段的区域可部分重叠,也可全部重叠。,,在4种逻辑段中,代码段用于存放当前要执行的指令段,即只有已经放到代码段的指令才能被执行。数据段或附加段用于存放指令要访问的数据,可以事先把要处理的数据放到数据段或附加段中。堆栈段用于临时存放一些数据,如在响应中断、子程序调用时把需要保护的数据(如断点地址)存在堆栈中,当需要这些数据时,再把它们从堆栈中取出来。,,存储器

33、分段管理的方法虽给编程带来一些麻烦,但给模块化程序、多通道程序及多用户程序的设计创造了条件。,下一页,返回,上一页,,,任务3 16位微处理器的存储管理,5.3.2存储管理的相关术语,,在8086微处理器中,在描述存储器地址时要用到4个术语,即物理地址、偏移地址、段基地址和逻辑地址。,,1.物理地址,,8086/8088的1 MB存储器以字节地址为单位,即存储器是按“字节寻址”的。存储器中的每个字节中可以存放一个字节数(8位二进制数),每个字节拥有一个唯一的地址编号(20位二进制数或5位十六进制数)。,,存储单元的地址码由8086芯片的20条地址线提供,再经译码确定。8086最大内存容量为1M

34、B(2,20,),这就意味着任何一个内存单元地址都要用一个20位二进制的地址表示,且把每一个内存单元的20位地址叫做物理地址。,下一页,返回,上一页,,,任务3 16位微处理器的存储管理,2.偏移地址,,偏移地址是指段内某内存单元的物理地址,相对于段起始地址的位移量。也就是说,是段内的某个存储单元与该段段首地址的差值,称为段内偏移地址或称为偏移量或相对地址,用16位二进制代码表示。由于一个段最大为64 KB,故偏移地址用16位二进制数表示就可以了。,,3.段基地址,,段基地址是放置在段寄存器上的地址信息。8086对内存储器采用分段存储管理的办法,8086将大小为1 MB的存储空间分为若干段,段

35、的大小可以根据需要决定,其最大值可为64 KB。存储器分段后,每一段都要有一个段号,且要用16位二进制数表示。,,,任务3 16位微处理器的存储管理,其实,每个段的第1个地址的高端16位二进制代码就是该段的段号,也叫段基地址,段基地址被保存在8086/8088的4个16位的寄存器CS,DS,SS和ES中。,,8086/8088对存储器分段时,各段起始位置的地址编号通常是能被16整除的内存单元。可以对段寄存器设置不同的值,使对微处理器的存储器访问指向不同的段。存储器各段间可以是连续的存储地址,也可以是不连续的存储地址,段之间还可以部分重叠,不过,每两段的段首地址必须相差16 B。,,4.逻辑地址

36、,,逻辑地址是在程序中对存储器地址的一种表示方法,一般表示为段基址与偏移地址之和。8086 CPU采用根据逻辑地址确定物理地址的方法,即将段基址左移4位与偏移地址相加,而得到内存单元的20位物理地址。,下一页,返回,上一页,,,任务3 16位微处理器的存储管理,段内存储单元地址与段的第1个单元地址相差的单元数称为段内偏移地址或偏移量或相对地址,段内偏移地址也用16位二进制数表示,通过段首地址与偏移地址可以计算出段内存储单元的20位物理地址。,,逻辑地址由某段的段地址和段内偏移地址这两部分组成。其计算公式可以表述如下。,,段内存储单元20位物理地址=16位段基地址x 10H + 16位段内偏移量

37、,,段基地址乘以10H(十六进制的16)相当于在段基地址后加4个0(二进制),即把段基地址左移4位,再加上偏移量,可得到20位物理地址。,,段基地址和段内偏移地址又称为逻辑地址,逻辑地址通常写成xxxxH :yyyyH。其中,xxxxH是段基地址,yyyyH是段内偏移地址,它们都是16位无符号数。如某条指令的逻辑地,下一页,返回,上一页,,,任务3 16位微处理器的存储管理,址为CS:IP,它表示由CS寄存器提供段基地址,由IP指令指针寄存器提供段内偏移地址。,,如,图5-5,所示,某段的基地址为6000 H,求段首的物理地址是多少?段内偏移量为0009 H单元的物理地址是多少?,,解如下。,

38、,段首的物理地址是6000 H x 10 H + 0000 H = 60000 H ,,,偏移量为9H单元的物理地址是6000H x 10H +9H =60009H,返回,上一页,,,任务4新型存储器技术,现代微机中CPU的速度提高非常快,导致快速CPU常常要等待慢速的主存,而且程序规模越来越大,只依靠主存已远远不能满足需要。为解决CPU与主存之间的速度匹配和存储容量问题,人们采用了许多新型的存储器技术来弥补两者在速度和容量方面的差距,其中常用的有多体交叉存储器、高速缓冲存储器(Cache)和虚拟存储器等。,,5.4.1多体交叉存储器,,多体交叉存储器是从改进主存的结构和工作方式入手,设法提高

39、其吞吐率,使主存速度与CPU速度相匹配。,下一页,返回,,,任务4新型存储器技术,目前大多数主存都采用MOS存储器,其存取时间约为70 ns~300ns,比CPU速度要低一个数量级。当主存以单一存取控制方式工作时,CPU每次访问主存,只能读出或写人一个信息,在访问过程中,CPU大部分时间处于等待状态,效率很低。,,多体交叉存储器的设计思想是在物理上将主存分成多个模块,每一个模块都包括一个存储体、地址缓冲寄存器和数据缓冲寄存器等,即它们都是一个完整的存储器。因此,CPU就能同时访问各个存储模块,任何时候都允许对多个模块并行地进行读/写操作,从而提高整个存储系统的平均访问速度。,,多体交叉存储器实

40、际上是把整个主存地址空间划分为多个同样大小的地址分空间。为了提高主存的数据传输速率,可以采用交叉编址的方案,,下一页,返回,上一页,,,任务4新型存储器技术,即利用主存地址的低K位来选择模块(可确定2,k,个模块),高m位用来指定模块中的存储单元,这样连续的几个地址就位于相邻的几个模块中,而不是在同一个模块中,故称为“多体交叉编址”。CPU要访问主存的几个连续地址时,可使这几个模块同时工作,整个主存的平均利用率得到提高。,,5.4.2高速缓冲存储器(cache),,在多级存储系统中,为解决CPU和主存之间的速度匹配问题,除采用多体交叉存储等技术外,更有效的一种方法是在CPU与主存间设置一个容量

41、小但存取速度比主存快数倍的存储器,称为高速缓冲存储器(Cache)。,,下一页,返回,上一页,,,任务4新型存储器技术,Cache可提高CPU访问存储器时的存取速度,减少处理器的等待时间,对提高整个处理器的性能将起到非常重要的作用。,,Cache的全部功能由硬件实现,对程序员来说是“透明”的,Cache的存在使得程序员面对一个既有Cache速度,又有主存容量的存储系统。CPU不仅和Cache相连,而且和主存之间也要保持通路。,,1. cache的工作原理,,对大量典型程序运行情况的分析结果表明,在一个较短的时间间隔内,由程序产生的地址往往集中在存储器逻辑地址空间很小范围内。,下一页,返回,上一

42、页,,,任务4新型存储器技术,指令地址的分布本来就是连续的,再加上循环程序段和子程序段要重复执行多次,因此,对这些地址的访问就自然地具有时间上集中分布的倾向。数据分布的这种集中倾向不如指令明显,但对数组的存储和访问以及工作单元的选择都可使存储器地址相对集中。这种对局部范围的存储器地址频繁访问,而对此范围以外的地址则访问甚少的现象,称为程序访问的局部性原理。,,根据该原理可在主存和CPU寄存器之间设置一个高速但容量相对较小的存储器Cache,把正在执行的指令地址附近的一小部分指令或数据,即当前最活跃的程序或数据从主存成批调入Cache,供CPU在一段时间内随时使用,大大减少CPU访问主存的次数,

43、从而加速程序的运行。,下一页,返回,上一页,,,任务4新型存储器技术,微机系统正是依据此原理不断地将与当前指令集相关联的一个不太大的后继指令集从内存读到Cache,然后再高速传送给CPU,从而达到速度匹配。CPU对存储器进行数据请求时先访问Cache。如数据在Cache中,则CPU对C ache进行读/写操作,称为“命中”。由于局部性原理不能保证所请求的数据都在Cache中,所以存在一个“命中率”,即CPU在任意一个时刻从Cache中可靠获取数据的几率。命中率越高从Cache中正确获取数据的可靠性就越大。,,(1)要访问的数据在Cache中。读操作时,CPU可直接从C ache中读取数据,不涉

44、及主存。写操作时,需改变C ache和主存中相应两个单元的内容。有两种处理办法,一种是Cache单元和主存中相应单元同时被修改,称为“直通存储法”。另一种是只修改Cache单元内容,同时用一个标志位作为标志,当有标志位的信息块从Cache中移去时再修改相应主存单元,把修改信息一次写回主存,称为“写回法”。显然直通存储法比较简单,但对于需多次修改的单元来说,可能导致不必要的主存复写工作。,下一页,返回,上一页,,,任务4新型存储器技术,(2)要访问的数据不在Cache中。此时CPU直接对主存进行操作。读操作时,把主存中相应信息块送Cache,同时把所需数据送CPU,不必等待整个块都装入Cache

45、,这种方法称为“直通取数”。写操作时,将信息直接写入内存。,,主存和C ache存储区均划分成块(block),每块由多个信息字组成,两者间以块为单位交换信息。Cache的内容是在读/写过程中逐步调入的,是主存中部分内容的副本。信息块调往Cache时的存放地址与它在主存时的不可能一致,两种地址间有一定对应关系,这种对应关系称为地址映像函数。将主存地址变换成Cache地址的变换过程一般是通过硬件地址变换机构按所采用的地址映像函数自动完成的。,,下一页,返回,上一页,,,任务4新型存储器技术,Cache存储容量比主存容量小得多,但不能太小,太小会使命中率太低;也没有必要过大,过大不仅会增加成本,且

46、当容量超过一定值后,命中率随容量增加将不会有明显增长。只要Cache空间与主存空间在一定范围内保持适当比例的映射关系,Cache命中率还是相当高的。一般规定Cache与内存的空间比为4:1 000,即128 KB Cash。可映射32 MB内存;256KB Cache可映射64 MB内存。在这种情况下,命中率都在90%以上。至于没有命中的数据,CPU只好直接从内存获取。获取的同时也把它复制到Cache,以备下次访问。,下一页,返回,上一页,,,任务4新型存储器技术,2. Cache的基本结构,,Cache通常由相连存储器实现。相连存储器的每一个存储块都具有额外的存储信息,称为标签(tab。访问

47、相连存储器时,将地址和每一个标签同时进行比较,对标签相同的存储块进行访问。Cache的3种基本结构如下。,,(1)全相连C ache。存储的块与块之间,以及存储顺序或保存的存储器地址之间没有直接关系。可访问很多的子程序、堆栈和段,而它们位于主存储器的不同部位上。因此,Cache保存着很多互不相关的数据块,Cache必须对每个块和块自身的地址加以存储。当请求数据时,Cache控制器要把请求地址同所有地址加以比较,进行确认。这种结构的主要优点是能够在给定时间内去存储主存储器中的不同的块,命中率高;缺点是每一次请求数据同Cache中的地址进行比较需要相当的时间,速度较慢。,下一页,返回,上一页,,,

48、任务4新型存储器技术,(2)直接映像Cache。由于每个主存储器的块在Cache中仅存在一个位置,因而把地址比较次数减少为一次。其做法是,为Cache中的每个块位置分配一个索引字段,用tag字段区分存放在Cache位置上不同的块。直接映像把主存储器分成若干页,主存储器每一页与Cache存储器大小相同,匹配的主存储器偏移量可直接映像为Cache偏移量。Cache的tag存储器(偏移量)保存着主存储器的页地址(页号)。这种方法优于全相连Cache,能进行快速查找,缺点是当主存储器组之间做频繁调用时,Cache控制器必须做多次转换。,,(3)组相连Cache。介于全相连Cache和直接映像Cache

49、之间。使用几组直接映像的块,对于某一个给定的索引号可允许有几个块位置,因而可以增加命中率和系统效率。,下一页,返回,上一页,,,任务4新型存储器技术,3.替换算法,,一个好的替换算法首先要看访问Cache的命中率如何,其次要看是否容易实现。替换算法的目标是使Cache获得最高的命中率,就是让Cache中总是保持着使用频率高的数据,从而使CPU访问Cache的成功率最高。,,替换算法有如下4个。,,(1)随机替换算法。随机替换算法是最简单的替换算法。当需要找替换的信息块时,用随机数发生器产生一个随机数,即为被替换的块号。这种算法完全不反映程序的局部性特点,没有考虑信息块的历史情况和使用情况,命中

50、率很低。,,(2)先进先出(FIFO)算法。把最早进入Cache的信息块给替换掉。为实现这种算法,需要在地址变换表中设置一个历史位,每当有一个新块调入Cache时,就将已进入Cache的所有信息块的历史位加1。,下一页,返回,上一页,,,任务4新型存储器技术,需要替换时只要挑选历史位中数值最大的信息块作为被替换块即可。这种算法在一定程度上能反映程序的局部性特点,比随机算法好,但这种方法只考虑历史情况,并没有反映出信息使用情况,所以其命中率也并不高。原因很简单,最先进来的信息块,或许就是经常要用的块。,,(3)近期最少使用(LRU)算法。把最近使用最少的信息块替换掉,要求随时记录Cache中各信

51、息块的使用情况。为反映每个信息块的使用情况,要为每个信息块设置一个计数器,以便确定哪个信息块是近期最少使用的。,,LRU算法也可用堆栈来实现,也称为堆栈型算法。当所设堆栈已满,又有一个信息块要求调入Cache时,先检查堆栈中是否已经有这一块。如有将这信息块从堆栈中取出压入堆栈栈顶;如没有将该信息块直接压入栈项。原来在栈底上的信息块就成为被替换的信息块而被压出堆栈,这样就保证任何时候栈顶上的信息块总是刚被访问过的块,而栈底上的块总是最近没有被访问过的块。,下一页,返回,上一页,,,任务4新型存储器技术,这种算法能较好地反映程序局部性特征,可获得较高的命中率。但由于近期使用少的未必是将来使用最少的

52、,所以这种算法的命中率比FIFO有所提高,但并非最理想。,,(4)优化替换算法。这是一种理想算法,实现起来难度较大。因此,只作为衡量其他算法的标准,这种算法需要程序运行两次,第1次分析地址流,第2次才真正运行程序。,,5.4.3虚拟存储器,,1.虚拟存储器的概念,,虚拟存储器(virtual memory)以存储器访问局部性为基础,建立在主存一辅存物理体系结构上,同时还有辅助软件、硬件来对主存与辅存之间的数据交换实现控制功能。,,虚拟存储器是为了扩大容量,把辅存当做主存使用,它将主存和辅存的地址空间统一编址,形成一个庞大的存储空间。程序运行时,,下一页,返回,上一页,,,任务4新型存储器技术,

53、用户可访问辅存中信息,可使用与访问主存同样的寻址方式,所需的程序和数据由辅助软件和硬件自动调人主存,之所以叫做“虚拟”,是因为这样的主存并不是真实存在的。,,在一个虚拟存储系统中,展现在CPU面前的存储器容量并不是实存容量加上辅存容量,而是一个比实存大得多的虚存空间,它与实存和辅存空间的容量无关,取决于机器所能提供的虚存地址码的长度。如某计算机系统中,存储器按字节编址,可提供的虚存地址码长48位,能提供的虚存空间为2,48,B = 256TB,这是任何计算机系统主存储器所不可能达到的容量。,,CPU以逻辑地址访问主存,由辅助硬件和软件确定逻辑地址和物理地址的对应关系,判断这个逻辑地址指示的存储

54、单元内容是否已装入主存。如在主存,CPU就直接执行该程序或数据;如不在主存,系统存储管理软件和辅助硬件就会把访问单元所在的程序块从辅存调入主存,并把逻辑地址转换成实地址。,下一页,返回,上一页,,,任务4新型存储器技术,主存一辅存层次的虚拟存储和C ache一主存层次有很多相似之处,但虚拟存储器和Cache仍有如下的区别。,,(1) Cache用于弥补主存与CPU的速度差距;虚拟存储器用来弥补主存和辅存之间的容量差距。,,(2) Cache每次传送信息块是定长的,只有几十字节;虚拟存储器信息块划分有分页、分段等,长度可以很大,达几百或几千字节。,,(3)CPU可直接访问Cache;而CPU不能

55、直接访问辅存。,,(4)Cache存取信息的过程、地址变换和替换算法等全部由辅助硬件实现,对程序员是透明的;而虚拟存储器是由辅助软件(操作系统的存储管理软件)和硬件相结合进行信息块的划分和程序的调度。,下一页,返回,上一页,,,任务4新型存储器技术,2.页式虚拟存储器,,以页为信息传送单位的虚拟存储器叫做“页式虚拟存储器”。页式虚拟存储器中,将虚拟空间和主存空间机械地分成大小固定的页。页的大小随机器而异,一般为512 B或几千字节不等,通常都取2的整数次幂个字节。这种划分是一种逻辑划分,可由管理软件任意指定。因此,页的起始地址都落在低位地址为零的地址上。,,虚存空间中所划分的页称为“虚页”,主

56、存空间中所划分的页称为“实页”。页面由0开始顺序编号,分别称为虚页号和实页号。虚拟地址由页号(页表索引)和页内地址(偏移地址)两部分组成(高位字段为虚页号,低位字段为页内地址);物理地址分成实页号和页内地址两部分,,下一页,返回,上一页,,,任务4新型存储器技术,页内地址的长度由页面大小决定,实页号的长度取决于主存的容量。因为虚存和实存页面大小一致,所以信息由虚页向实页调入时以页为单位,页边界对齐,页内地址无需修改就可直接使用。因此,虚一实地址的转换主要是虚页号向实页号的转换,这个转换关系由页表给出。,,为实现地址变换,要建立一张虚地址页号与实地址页号的对照表,记录程序的虚页面调入主存时被安排

57、在主存中的位置,这张表叫“页表”,是存储管理软件根据主存运行情况自动建立的。因为虚存空间比实存空间大得多,故虚页号要比实页号的长度长。,,虚拟存储模式中,每一个程序都有一个自己独立的虚存空间。也就是说,同一个系统运行不同的程序时会有不同的虚存空间。程序运行时,存储管理软件要根据主存的运行情况为每一个程序建立一张独立的页表,存放在主存特定区域。页表信息字按虚页号顺序排列,,下一页,返回,上一页,,,任务4新型存储器技术,在每个虚页中都有一个描述页表状况的信息字,称为“页表信息字”,其中存放该虚页对应到实存中的页号以及一些其他信息。,,当一个虚页号向实页号转换时,先应找到该程序的页表区首地址,然后

58、按虚页号顺序找到该页的页表信息字。由于页表被保存在内存的特定区域中,程序投入运行时,便由存储管理软件把这个程序的页表区首地址送到页表的基址寄存器中。,,页式虚拟存储器每页长度固定且可顺序编号,页表设置很方便。虚页调入主存时,主存空间分配简单,开销小,页面长度较小,主存空间可得到充分地利用,因而得到广泛应用。缺点是程序不可能正好是页面的整数倍,最后一页的零头无法利用而浪费,同时机械分页无法照顾程序内部的逻辑结构,几乎不可能出现一页正好是一个逻辑上独立的程序段,指令或数据跨页的状况会增加查页表的次数和页面失效的可能性。,下一页,返回,上一页,,,任务4新型存储器技术,3.段式虚拟存储器,,段式虚拟

59、存储器是以程序的逻辑结构所自然形成的段作为主存分配单位进行存储器管理。其中每个段的长度可不同,可独立编址。有的段甚至可事先不确定大小,而在执行时动态地决定。程序运行时,以段为单位整段从辅存调入主存,一段占用一个连续的存储空间,CPU访问时仍需进行虚-实地址的转换。它与页式虚拟存储器技术十分相似,每个程序都有一个段表,存放程序段装入主存的状态信息,主要有段号、段起点、装入位置和段长度等。程序运行时,要先根据段表确定所访问的虚段是否已经存在于主存中。如没有,则先将其调入主存;如已在主存中,则进行虚一实转换,确定其在主存中的位置。,下一页,返回,上一页,,,任务4新型存储器技术,段式虚拟存储器配合了

60、模块化程序设计,使各段之间相互独立、互不干扰。程序按逻辑功能分段,各有段名,便于程序段公用和按段调用,可提高命中率。不足之处是各段长度不等,调入主存时主存空间分配工作比较复杂,段与段之间的内存空间常常不好利用而造成浪费。,,4.段页式虚拟存储器,,为充分发挥页式和段式虚拟存储器各自的优点,可把两者结合起来形成段页式虚拟存储器,将存储空间仍按程序的逻辑模块分段,以保证每个模块的独立性和便于用户公用。每段又划分为若干个页,页面大小与实存页面相同。,,虚拟地址的格式包括段号、页号和页内地址三部分。实地址则只有页号和页内地址。虚存与实存之间信息调度以页为基本单位。每个程序有一张段表,每段对应一张页表。CPU访问时,由段表指出每段对应的页表的起始地址,而每一段的页表可指出该段的虚页在实存空间的存放位置(实页号),最后与页内地址拼接即可确定CPU要访问的信息的实存地址。这是一种较好的虚拟存储器管理方式。,返回,上一页,,,图5-1存储系统的层次结构,返回,,,图5-2一款现代512MB DDR 400内存条,返回,,,图5-3 一款金士顿4GBDDR2内存条,返回,,,图5-4内存分段示意图,返回,,,图5-5逻辑段,返回,,,

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

相关资源

更多
正为您匹配相似的精品文档
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  sobing.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


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