计算机系统组成与结构PPT第9章.ppt
《计算机系统组成与结构PPT第9章.ppt》由会员分享,可在线阅读,更多相关《计算机系统组成与结构PPT第9章.ppt(68页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第第9 9章章 存储器结构存储器结构9.1 存储器的层次结构存储器的层次结构9.2 Cache存储器存储器*9.3 虚拟存储器虚拟存储器*9.4 基本基本Cache和虚拟存储器的扩展和虚拟存储器的扩展*9.5 实例:实例:Pentium/Windows个人计算机个人计算机 上的内存管理上的内存管理计算机组成与结构1湖南大学计算机与通信学院9.1 存储器的层次结构存储器的层次结构图图9.1 一般的存储器层次一般的存储器层次物理内存物理内存:由动态:由动态RAM组成。组成。Cache存储器存储器:由静态:由静态RAM构成,比构成,比DRAM快得多,但也快得多,但也 昂贵的多。昂贵的多。Cache是
2、物理内存的部分副本。是物理内存的部分副本。虚拟存储器虚拟存储器:空间比物理内存大得多逻辑空间。虚拟管理器:空间比物理内存大得多逻辑空间。虚拟管理器 通过在物理内存和一个存储介质之间调度来达通过在物理内存和一个存储介质之间调度来达 到访问的目的。到访问的目的。计算机组成与结构2湖南大学计算机与通信学院哈佛结构:哈佛结构:计算机存储系统的计算机存储系统的Cache层次中,每一级层次中,每一级Cache包含包含两个单独的两个单独的Cache存储器,其中存储器,其中 一个是指令一个是指令Cache,一个是数据一个是数据Cache。9.2 Cache存储器存储器 大部分计算机在大部分计算机在CPUCPU
3、和物理内存之间包含一个较小容和物理内存之间包含一个较小容量的量的CacheCache存储器,而不是使用存储器,而不是使用CacheCache存储器构建计存储器构建计算机的整个存储系统。目标是在合理的价格下减少算机的整个存储系统。目标是在合理的价格下减少处理器的内存访问时间。处理器的内存访问时间。计算机组成与结构3湖南大学计算机与通信学院9.2.1 相联存储器相联存储器一般存储器:接收一个地址,访问该地址中的一般存储器:接收一个地址,访问该地址中的 数据。数据。相联存储器:并行搜索所有单元,标记那些与相联存储器:并行搜索所有单元,标记那些与 特定数据特定数据 匹配的单元,然后连续匹配的单元,然后
4、连续 读出匹配的数据值。读出匹配的数据值。计算机组成与结构4湖南大学计算机与通信学院考虑一个由考虑一个由8 8个个字单元组成的简字单元组成的简单的相联存储器,单的相联存储器,每个单元有每个单元有16 16 位,如图位,如图9.29.2所所示。示。除数据位外,每除数据位外,每单元都有一个额单元都有一个额外的标记位外的标记位V V。(数据有效位,数据有效位,为为1 1说明这个单说明这个单元数据有效,为元数据有效,为0 0说明数据无效说明数据无效 )图图9.2 相联存储器相联存储器的内部组织结构的内部组织结构计算机组成与结构5湖南大学计算机与通信学院为了从相联存储器中读出一个值,为了从相联存储器中读
5、出一个值,CPU必必须给出两个值,即要被匹配的数据值、以须给出两个值,即要被匹配的数据值、以及哪些位需要检查。第一个值是及哪些位需要检查。第一个值是参数参数或或数数据据,第二个值是,第二个值是屏蔽位屏蔽位或或关键位关键位 如果满足如下的公式,则匹配就会发生如果满足如下的公式,则匹配就会发生计算机组成与结构6湖南大学计算机与通信学院1.1.屏蔽寄存器中值为屏蔽寄存器中值为1 1的每一位,单元中的值与数据的每一位,单元中的值与数据寄存器中的值都相同寄存器中的值都相同2.2.单元的有效位被设置为单元的有效位被设置为1 1;例如例如(参考图参考图9.2)9.2):屏蔽寄存器屏蔽寄存器K K 1111
6、0000 0000 00001111 0000 0000 0000数据寄存器数据寄存器D D 1010 XXXX XXXX XXXX1010 XXXX XXXX XXXX数数 据据 位位M M 1010 1101 0000 01111010 1101 0000 0111执行执行 0000 XXXX XXXX XXXX0000 XXXX XXXX XXXX执行执行 1111 XXXX XXXX XXXX1111 XXXX XXXX XXXX执行执行 1111 1111 11111111 11111111 11111111计算机组成与结构7湖南大学计算机与通信学院将数据写回相联存储器将数据写回相联
7、存储器CPU把数据送到数据寄存器并发出把数据送到数据寄存器并发出写信号。相联存储器检查所有单元写信号。相联存储器检查所有单元的有效位,并找到有效位为的有效位,并找到有效位为0的一的一个单元,如果找到,把数据存到这个单元,如果找到,把数据存到这个单元,同时将有效位设为个单元,同时将有效位设为1。如。如果没有找到,必须采用果没有找到,必须采用替换算法替换算法清清除一个单元来保存数据。除一个单元来保存数据。常见的替换算法常见的替换算法lFIFOlLRUlRANDOM计算机组成与结构8湖南大学计算机与通信学院块号块号 块内地址块内地址b位位c位位Cache地址地址字块字块0字块字块12 1c字块C-1
8、012 -1字块字块M-1m字块字块0字块字块101主存块号主存块号主存储器主存储器 主存块号主存块号 块内地址块内地址n位位m位位b位位主存主存地址地址M块块B个字节个字节主存和主存和CacheCache的基本结构的基本结构标签标签标签C块B个字节个字节计算机组成与结构9湖南大学计算机与通信学院下面以主存下面以主存=16块,块,Cache=8块,块大小块,块大小=16个存个存储字节为例说明几种常用映像方式:储字节为例说明几种常用映像方式:(1)全相联:主存中的一块可映像到全相联:主存中的一块可映像到Cache中任意块。中任意块。b0b1b7B0B1BiB31Cache主存主存地址块号B块内地
9、址W4 4位位4 4位位Cache地址块号b块内地址w3位位4位位Cache标签需记下主存块号标签需记下主存块号(主存地址高(主存地址高4位)位)计算机组成与结构10湖南大学计算机与通信学院b0b1b7B0B1BiB31Cache主存主存地址块号B块内地址W4位4位Cache地址块号b块内地址w3位位4位位(2)直接相联:主存中的一块只能映像到直接相联:主存中的一块只能映像到Cache中某一特定块中某一特定块Cache标签只需记下主存区号标签只需记下主存区号(主存地址高(主存地址高1位)位)0区区1区区区号a区内块号b块内地址w3位位4位位1位位计算机组成与结构11湖南大学计算机与通信学院(3
10、)N路组相联:全相联和直接相联的结合。路组相联:全相联和直接相联的结合。b0b1b2b3b4b5b6b7B0B1B2B3B4B5B6B7B8B9B30B31组0组1组2组3组0组1组2组3组0组3区0区1区3设设设设组大小组大小组大小组大小=2=2块块块块Cache主存地址块号B块内地址W4位Cache地址组内块号b块内地址w1位位4位位4位组号g2位位Cache标签需记下主存段号标签需记下主存段号(主存地址高(主存地址高2位)位)段号s段内块号b块内地址w2位位4位位2位位0段段1段段2段段3段段计算机组成与结构12湖南大学计算机与通信学院9.2.2 相联映象的相联映象的Cache存储器存储
11、器64K的的8位内存位内存图图 9.3 相相对对简简单单CPU的的相相联联Cache计算机组成与结构13湖南大学计算机与通信学院作用于数据行或数据块的相联存储器作用于数据行或数据块的相联存储器l存储器在每个单元存储存储器在每个单元存储4个字节的数据。(如图个字节的数据。(如图9.4)l同一个单元的同一个单元的4个数据具有相同的高位地址,即高个数据具有相同的高位地址,即高14位相同。位相同。l比图比图9.3中的相联存储器采用了更多的位数中的相联存储器采用了更多的位数(46位位 vs 24位)位),但更少的存储单元但更少的存储单元。计算机组成与结构14湖南大学计算机与通信学院图图 9.4 相相对对
12、简简单单CPU中中,行行大大小小 为为4字字节节的的相相联联Cache计算机组成与结构15湖南大学计算机与通信学院优点:优点:利用了利用了访问的局部性原理访问的局部性原理:当内存单元:当内存单元X中的指令被访问时,中的指令被访问时,下一条被执行的指令非常有可能就在内存单元下一条被执行的指令非常有可能就在内存单元X+1中。中。例如:例如:当访问地址当访问地址0单元的时候,整个块(单元的时候,整个块(0,1,2,3)的值都被)的值都被从物理内存读入从物理内存读入CPU。当当CPU下次要执行在内存单元下次要执行在内存单元1、2、3中的指令时,他们已中的指令时,他们已在在cache中即能被访问而不必从
13、较慢的物理内存中读取。中即能被访问而不必从较慢的物理内存中读取。计算机组成与结构16湖南大学计算机与通信学院 不仅指令具有访问的局部性,数据同样也具有不仅指令具有访问的局部性,数据同样也具有 访问的局部性访问的局部性 如编译器通常将一列数组元素安排到相邻的内如编译器通常将一列数组元素安排到相邻的内 存单元中,以方便处理器顺序访问数据值。存单元中,以方便处理器顺序访问数据值。计算机组成与结构17湖南大学计算机与通信学院9.2.3 直接映象的直接映象的Cache存储器存储器一种利用标准的一种利用标准的SRAM、廉价的廉价的Cache映射方案映射方案物理内存物理内存Cache深度为深度为1k64k
14、x 8位位xxxx xx11 1111 111111 1111 1111计算机组成与结构18湖南大学计算机与通信学院l索引索引原始地址的低十位,用来选择原始地址的低十位,用来选择Cache的一个特定单元的一个特定单元l标签标签原始地址中不是索引的那些高位。原始地址中不是索引的那些高位。直接映象的直接映象的Cache存储器存储器一个单元包括(图一个单元包括(图9.5):标签标签数据数据有效值有效值计算机组成与结构19湖南大学计算机与通信学院图图9.5 相对简单相对简单CPU的直接映象的直接映象Cache计算机组成与结构20湖南大学计算机与通信学院采用数据行的直接映像采用数据行的直接映像Cache
15、存储器存储器 图图9.6 相对简单的相对简单的CPU中,行大小中,行大小为为4字节的直接映字节的直接映像像Cache计算机组成与结构21湖南大学计算机与通信学院直接映像的直接映像的Cache存储器存储器 优点:优点:价格低价格低容量大容量大 缺点:缺点:灵活性差灵活性差 如前所述,物理内存中任何形式为如前所述,物理内存中任何形式为xxxx xx11 1111 1111的地的地址都只能映射到址都只能映射到Cache中地址为中地址为11 1111 1111的单元中。的单元中。计算机组成与结构22湖南大学计算机与通信学院JUMP 1000HJUMP 0000HJUMP 0000HJUMP 1000H
16、考虑下面的代码:考虑下面的代码:0000 0000 0000 0000(0000H):JUMP 1000H0001 0000 0000 0000(1000H):JUMP 0000H直接映象直接映象Cache地址地址00 0000 0000JUMP 0000HJUMP 1000H计算机组成与结构23湖南大学计算机与通信学院9.2.4 组相联映像的组相联映像的cache存储器存储器特点特点l灵活性增强灵活性增强减少由直接映像带来的覆盖数据的问题减少由直接映像带来的覆盖数据的问题l采用比较便宜的采用比较便宜的SRAMN路组相联:路组相联:每个单元能够包含每个单元能够包含N个字节或字个字节或字直接映像
17、的直接映像的cache可以看作是一个一路可以看作是一个一路组相联映像组相联映像cache存储器存储器计算机组成与结构24湖南大学计算机与通信学院考察大小为考察大小为1k的的2路组相联路组相联cache(如图如图9.7)l该该cache有有1k个数据入口,每个单元个数据入口,每个单元2个数据值,因此有个数据值,因此有512个单元个单元l用用9个地址位选择个地址位选择cache单元,剩下的单元,剩下的7位说明标签值位说明标签值l计数值用来纪录数据什么时候被访问过了计数值用来纪录数据什么时候被访问过了图图9.7 相对简单相对简单CPU的的2路组相联路组相联cache计算机组成与结构25湖南大学计算机
18、与通信学院JUMP 1000HJUMP 0000HJUMP 0000HJUMP 1000H重新考虑下面的代码:重新考虑下面的代码:0000 0000 0000 0000(0000H):JUMP 1000H0001 0000 0000 0000(1000H):JUMP 0000H组相联映象组相联映象cache同同一一组组计算机组成与结构26湖南大学计算机与通信学院一种采用数据行的组相联一种采用数据行的组相联cache图图9.8 相对简单相对简单CPU中中具有具有4字节数据行的字节数据行的2路组相联路组相联cache计算机组成与结构27湖南大学计算机与通信学院第9章 习题5:一个使用相对简单CPU
19、的计算机系统,要包含一个1K大小、行大小为2字节的相联Cache:a)Cache中的每一单元有多少位?b)相联存储器需要什么mask值?解:解:a)Cache每一单元共每一单元共32位,构成如下:位,构成如下:15 bits Tag8 bits Data 8 bits Data1 bitsValidb)Mask Resister7FFF0000H计算机组成与结构28湖南大学计算机与通信学院第9章 习题6:对于第5题所示的计算机系统,给出执行每一如下指令后的Cache中的内容(所有值均以16进制给出):0:LDAC42343:CLAC4:JMPZ000A7:JUMP0000A:INACB:MVA
20、CC:ADDD:STAC092710:JUMP00004234:554235:294次访存次访存AC=55H命中命中1次次1次访存次访存 命中命中AC=03次访存次访存 命中命中1次次跳过未执行跳过未执行1次访存次访存1次访存次访存 命中命中发生跳转发生跳转AC=1R=11次访存次访存4次访存次访存 命中命中2次次AC=20927=23次访存次访存 命中命中1次次发生跳转发生跳转第一轮命中率7/18,从第二轮开始100计算机组成与结构29湖南大学计算机与通信学院P301习题习题6:Cache hit27Cache hitCache hitCache hitCache hit计算机组成与结构30
21、湖南大学计算机与通信学院9.2.5 在在cache中替换数据中替换数据问题的引出:问题的引出:计算机开始执行一个程序。它从内存中取指令和数据,计算机开始执行一个程序。它从内存中取指令和数据,同时将这些值载入同时将这些值载入cache。当。当cache为空或很少被占用为空或很少被占用时,会工作得很好。但是,最终计算机会要将数据移时,会工作得很好。但是,最终计算机会要将数据移入到已占用的入到已占用的cache单元。此时,将哪个数据移出单元。此时,将哪个数据移出cache,以及此数据如何再保存到物理内存,这一问以及此数据如何再保存到物理内存,这一问题就变得至关重要。题就变得至关重要。计算机组成与结构
22、31湖南大学计算机与通信学院替换策略:替换策略:1.FIFO 先进先出原则先进先出原则2.LRU 最久未最久未使用原则使用原则3.LFU 最少最少使用原则使用原则4.随机策略随机策略计算机组成与结构32湖南大学计算机与通信学院1.FIFO 先进先出策略:先进先出策略:一般与全相联映像配套使用一般与全相联映像配套使用l按顺序填充相联存储器,当按顺序填充相联存储器,当cache占满时返回最顶单元,用新数据占满时返回最顶单元,用新数据替换原有数据替换原有数据l只要一个寄存器就能实现只要一个寄存器就能实现该寄存器保存下一个要被替换的该寄存器保存下一个要被替换的单元的指针单元的指针l性能可能不好、容易实
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机系统 组成 结构 PPT
限制150内