存储层次汇总课件_第1页
存储层次汇总课件_第2页
存储层次汇总课件_第3页
存储层次汇总课件_第4页
存储层次汇总课件_第5页
已阅读5页,还剩23页未读 继续免费阅读

下载本文档

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

文档简介

1、第五章 存储层次第五章 存储层次5.7 主存存储器的访问源取指令、取操作数、写操作数和I/O存储器性能指标容量、速度和每位价格访问时间(Access Time)存储周期(Cycle Time)种类:DRAM和SRAMAmdahl经验规则容量随CPU速度的提高而线性增加,实际情况 容量60% per year,而性能7% per year,差距是显然的根据A-定律,如果忽略计算的一个部分,而去努力提高其余部分的速度,其收效甚微。解决存储器频带问题的三种途径:多个存储器并行工作,设置各种缓冲器,Cache存储系统TimeAccess TimeCycle Time5.7 主存存储器的访问源TimeA

2、ccess TimeSimple: CPU, Cache, Bus, Memory same width (32 bits)Interleaved: CPU, Cache, Bus 1 word: Memory N Modules(4 Modules); example is word interleavedWide: CPU/Mux 1 word; Mux/Cache, Bus, Memory N words (Alpha: 64 bits & 256 bits)三种存储器组织方式Simple: Interleaved: Wide: 三种存提高主存性能的方法增大存储器的宽度(并行访问存储器)

3、最简单直接的方法优点:简单、直接,可有效增加带宽缺点增加了CPU与存储器之间的连接通路的宽度,实现代价提高主存容量扩充时,增量应该是存储器的宽度写操作问题(部分写操作)冲突问题取指令冲突,遇到程序转移时,一个存储周期中读出的n条指令中,后面的指令将无用读操作数冲突。一次同时读出的几个操作数,不一定都有用写操作冲突。这种并行访问,必须凑齐n个字之后一起写入。如果只写一个字,必须先把属于同一个存储字的数据读到数据寄存器中,然后在地址码的控制下修改其中一个字,最后一起写。读写冲突。当要读写的字在同一个存储字内时,无法并行操作。冲突的原因提高主存性能的方法增大存储器的宽度(并行访问存储器)冲突的原因从

4、存储器本身看,主要是地址寄存器和控制逻辑只有一套。如果有n个独立的地址寄存器和n套读写控制逻辑,那么第3,4种冲突自然解决,第1、2种冲突也会有所缓解。冲突的原因从存储器本身看,主要是地址寄存器和控制逻辑只有一套Access Pattern without Interleaving:Start Access for D1CPUMemoryStart Access for D2D1 availableAccess Pattern with 4-way Interleaving:Access Bank 0Access Bank 1Access Bank 2Access Bank 3We can A

5、ccess Bank 0 againCPUMemoryBank 1MemoryBank 0MemoryBank 3MemoryBank 2Increasing Bandwidth - InterleavingAccess Pattern without Interle采用简单的多体交叉存储器一套地址寄存器和控制逻辑存储器芯片组织为多个体(Bank)存储体的宽度,通常为一个字,不需要改变总线的宽度目的:在总线宽度不变的情况下,完成多个字的并行读写P234 例5.14存储器中所包含的体数,为避免访问冲突,基本原则为:体的数目 = 访问体中一个字所需的时钟周期数例如:某一向量机的存储系统,CPU发出

6、访存请求10个时钟周期后,CPU将从存储体0得到一个字,随后体0开始读该存储体的下一个字,而CPU依次从其余7个存储体中得到后继的7个字。在第18个周期,CPU 将需要存储体0提供下一个字,但该字要到第20个时钟周期才被读出,CPU只好等待。缺陷:不能对单个体单独访问,对解决冲突没有帮助,逻辑上是一种宽存储器,对各个存储体的访问被安排在不同的时间段采用简单的多体交叉存储器一套地址寄存器和控制逻辑独立存储体目的:可对单个存储体独立操作多处理机系统I/OCPU (hit under n misses, 非阻塞Cache)思路:有多个存储控制器,每个体有独立的地址线,可能有独立的数据线多体交叉方式中

7、访存操作和数据传送重叠;独立存储体完全重叠独立存储体方式与多体交叉方式的结合主存系统由若干独立存储体构成独立存储体内,按多体交叉方式组织独立存储体目的:可对单个存储体独立操作避免存储体冲突存储体冲突:两个访问请求访问同一个体关键问题:地址映射方法(1) 体号 地址 MOD 体数 体内地址 地址 / 体数(2)体号 地址 MOD 体数 当存储体数为素数且为2*n 1时, 体内地址 地址 MOD 存储体中的字数 P238 表5.11要求:体号和体内地址计算尽量简单。避免存储体冲突存储体冲突:两个访问请求访问同一个体典型的DRAM组织rowdecoderrowaddressColumn Select

8、or & I/O CircuitsColumnAddressdataRAM Cell Arrayword (row) selectbit (data) linesRow and Column Address together: Select 1 bit a timeEach intersection representsa 1-T DRAM Cell典型的DRAM组织rrowColumn Selector &DRAM专用交叉结构Nibble RAS, then CAS, next CAS, next CASPage RAS then any CASStatic Column 不需要CAS信号R

9、AMBUS和Synchronous DRAMDRAM专用交叉结构Nibble RAS, then Fast Page Mode OperationRegular DRAM Organization:N rows x N column x M-bitRead & Write M-bit at a timeEach M-bit access requiresa RAS / CAS cycleFast Page Mode DRAMN x M “SRAM” to save a rowAfter a row is read into the registerOnly CAS is needed to a

10、ccess other M-bit blocks on that rowRAS_L remains asserted while CAS_L is toggledN rowsN colsDRAMColumnAddressM-bit OutputM bitsN x M “SRAM”RowAddressARow AddressCAS_LRAS_LCol AddressCol Address1st M-bit AccessCol AddressCol Address2nd M-bit3rd M-bit4th M-bitFast Page Mode OperationRegula5.8 虚拟存储器基本

11、原理允许应用程序的大小,超过主存容量。目的是提高存储系统的容量帮助OS进行多进程管理每个进程可以有自己的地址空间提供多个进程空间的保护可以将多个逻辑块映射到共享的物理存储器上静态重定位和动态重定位应用程序运行在虚地址空间虚实地址转换对用户是透明的虚拟存储管理的是主存辅助存储器这个层面上失效:页失效或地址失效块:页或段5.8 虚拟存储器基本原理允许应用程序的大小,超过主存容量存储层次汇总课件Cache与VM的区别目的不同Cache是为了提高访存速度VM是为了提高存储容量替换的控制者不同Cache失效由硬件处理VM的页失效通常由OS处理一般页失效开销很大,因此替换算法非常重要地址空间VM空间由CP

12、U的地址尺寸确定Cache的大小与CPU地址尺寸无关下一级存储器Cache下一级是主存VM下一级是磁盘,大多数磁盘含有文件系统,文件系统寻址与主存不同,它通常在I/O空间中,VM的下一级通常称为SWAP空间 Cache与VM的区别目的不同虚拟存储器页式管理的典型参数与Cache的比较从表中看 (与Cache参数相比)除了失效率较低,其他参数都比Cache大虚拟存储器页式管理的典型参数与Cache的比较从表中看 (与页式管理和段式管理VM可分为两类:页式和段式页式:每页大小固定段式:每段大小不等两者区别:P241 表5.31 GCGarbage Collector页式管理和段式管理VM可分为两类

13、:页式和段式存储层次汇总课件VM的四个问题 (1/2)映象规则选择策略:低失效率和复杂的映象算法,还是简单的映射方法,高失效率由于失效开销很大,一般选择低失效率方法,即全相联映射查找算法用附加数据结构固定页大小用页表VPN PPNTag标识该页是否在主存可变长段 段表段表中存放所有可能的段信息段号 段基址 再加段内偏移量可能由许多小尺寸段页表页表中所含项数:一般为虚页的数量功能: VPNPPN,方便页重新分配,有一位标识该页是否在内存VM的四个问题 (1/2)映象规则页表项问题按虚页的数量设置页表大小,可能页表非常大例如32位虚地址,4KB / 页,页表项需要 4GB/4KB项需要页大小与页表

14、项数目的平衡问题另一方案:反向页表基本思路:页表反映物理页的数目,而不是虚拟页的数目用Hash表 完成虚拟页号到物理页号的转换通过比较Tag确定是否是所需的PN如果是,再检测其是否在内存如果不是:则从硬盘上查找全部页表隐含问题:可能需要两次访问硬盘页表项问题按虚页的数量设置页表大小,可能页表非常大VM的四个问题(2/2)替换规则LRU是最好的但真正的LRU方法,硬件代价较大用硬件简化,通过OS来完成为了帮助OS寻找LRU页,每个页面设置一个 use bit当访问主存中一个页面时,其use bit置位OS定期复位所有使用位,这样每次复位之前,使用位的值就反映了从上次复位到现在的这段时间中,哪些页

15、曾被访问过。当有失效冲突时,由OS来决定哪些页将被换出去。写策略总是用写回法,因为访问硬盘速度很慢。VM的四个问题(2/2)替换规则存储层次汇总课件页面大小的选择页面选择较大的优点减少了页表的大小如果局部性较好,可以提高命中率页面选择较大的缺点内存中的碎片较多,内存利用率低进程启动时间长失效开销加大页面大小的选择页面选择较大的优点Alpha VPNPPNAlpha VPNPPNTLB (Translation look-aside Buffer)页表一般很大,存放在主存中。导致每次访存可能要两次访问主存,一次读取页表项,一次读写数据解决办法:采用 TLBTLB存放近期经常使用的页表项,是整个页表的部分内容的副本。基本信息: VPN#PPN#Protection Field#use bit # dirty bitOS修改页表项时,需要刷新TLB,或保证TLB中没有该页表项的副本P244 图5.25 ALPHA 21064 的地址转换过程TLB必须在片内速度至关重要TLB过小,意义不大TLB过大,代价较高相联度较高(容量小)TLB (Translation look-aside BuTLB的典型参数block size - same as a page tabl

温馨提示

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

评论

0/150

提交评论