资源描述
Title,This is our 1st Level Bullet,This is our 2nd level bullet,This is our 3rd level bullet,This is our next 1st Level Bullet,This is our 2nd level bullet,This is our 3rd level bullet,计算机体系结构,Chapter5.,*,第五章 存储层次,第五章 存储层次,5.7 主存,存储器的访问源,取指令、取操作数、写操作数和,I/O,存储器性能指标,容量、速度和每位价格,访问时间(,Access Time),存储周期(,Cycle Time),种类:,DRAM,和,SRAM,Amdahl,经验规则,容量随,CPU,速度的提高而线性增加,实际情况 容量60%,per year,,而性能7%,per year,,差距是显然的,根据,A-,定律,如果忽略计算的一个部分,而去努力提高其余部分的速度,其收效甚微。,解决存储器频带问题的三种途径:多个存储器并行工作,设置各种缓冲器,,Cache,存储系统,Time,Access Time,Cycle Time,5.7 主存存储器的访问源TimeAccess Time,Simple,:,CPU,Cache,Bus,Memory same width(32 bits),Interleaved,:,CPU,Cache,Bus 1 word:Memory N Modules(4 Modules);example is,word interleaved,Wide,:,CPU/Mux 1 word;Mux/Cache,Bus,Memory N words(Alpha:64 bits&256 bits),三种存储器组织方式,Simple:Interleaved:Wide:三种存,提高主存性能的方法,增大存储器的宽度(并行访问存储器),最简单直接的方法,优点:简单、直接,可有效增加带宽,缺点,增加了,CPU,与存储器之间的连接通路的宽度,实现代价提高,主存容量扩充时,增量应该是存储器的宽度,写操作问题(部分写操作),冲突问题,取指令冲突,遇到程序转移时,一个存储周期中读出的,n,条指令中,后面的指令将无用,读操作数冲突。一次同时读出的几个操作数,不一定都有用,写操作冲突。这种并行访问,必须凑齐,n,个字之后一起写入。如果只写一个字,必须先把属于同一个存储字的数据读到数据寄存器中,然后在地址码的控制下修改其中一个字,最后一起写。,读写冲突。当要读写的字在同一个存储字内时,无法并行操作。,冲突的原因,提高主存性能的方法增大存储器的宽度(并行访问存储器),冲突的原因,从存储器本身看,主要是地址寄存器和控制逻辑只有一套。如果有,n,个独立的地址寄存器和,n,套读写控制逻辑,那么第3,4种冲突自然解决,第1、2种冲突也会有所缓解。,冲突的原因从存储器本身看,主要是地址寄存器和控制逻辑只有一套,Access Pattern without Interleaving:,Start Access for D1,CPU,Memory,Start Access for D2,D1 available,Access Pattern with 4-way Interleaving:,Access Bank 0,Access Bank 1,Access Bank 2,Access Bank 3,We can Access Bank 0 again,CPU,Memory,Bank 1,Memory,Bank 0,Memory,Bank 3,Memory,Bank 2,Increasing Bandwidth-Interleaving,Access Pattern without Interle,采用简单的多体交叉存储器,一套地址寄存器和控制逻辑,存储器芯片组织为多个体(,Bank),存储体的宽度,通常为一个字,不需要改变总线的宽度,目的:在总线宽度不变的情况下,完成多个字的并行读写,P234,例5.14,存储器中所包含的体数,为避免访问冲突,基本原则为,:,体的数目=访问体中一个字所需的时钟周期数,例如:某一向量机的存储系统,,CPU,发出访存请求10个时钟周期后,,CPU,将从存储体0得到一个字,随后体0开始读该存储体的下一个字,而,CPU,依次从其余7个存储体中得到后继的7个字。在第18个周期,,CPU,将需要存储体0提供下一个字,但该字要到第20个时钟周期才被读出,,CPU,只好等待。,缺陷:不能对单个体单独访问,对解决冲突没有帮助,逻辑上是一种宽存储器,对各个存储体的访问被安排在不同的时间段,采用简单的多体交叉存储器一套地址寄存器和控制逻辑,独立存储体,目的:可对单个存储体独立操作,多处理机系统,I/O,CPU(hit under n misses,非阻塞,Cache),思路:有多个存储控制器,每个体有独立的地址线,可能有独立的数据线,多体交叉方式中访存操作和数据传送重叠;独立存储体完全重叠,独立存储体方式与多体交叉方式的结合,主存系统由若干独立存储体构成,独立存储体内,按多体交叉方式组织,独立存储体目的:可对单个存储体独立操作,避免存储体冲突,存储体冲突:两个访问请求访问同一个体,关键问题:地址映射方法,(1)体号 地址,MOD,体数,体内地址 地址/体数,(2)体号 地址,MOD,体数,当存储体数为素数且为2*,n 1,时,,体内地址 地址,MOD,存储体中的字数,P238,表5.11,要求:体号和体内地址计算尽量简单。,避免存储体冲突存储体冲突:两个访问请求访问同一个体,典型的,DRAM,组织,r,o,w,d,e,c,o,d,e,r,row,address,Column Selector&,I/O Circuits,Column,Address,data,RAM Cell,Array,word(row)select,bit(data)lines,Row and Column Address together:,Select 1 bit a time,Each intersection represents,a 1-T DRAM Cell,典型的DRAM组织rrowColumn Selector&,DRAM,专用交叉结构,Nibble RAS,then CAS,next CAS,next CAS,Page RAS then any CAS,Static Column,不需要,CAS,信号,RAMBUS,和,Synchronous DRAM,DRAM专用交叉结构Nibble RAS,then,Fast Page Mode Operation,Regular DRAM Organization:,N rows x N column x M-bit,Read&Write M-bit at a time,Each M-bit access requiresa RAS/CAS cycle,Fast Page Mode DRAM,N x M“SRAM”to save a row,After a row is read into the register,Only CAS is needed to access other M-bit blocks on that row,RAS_L remains asserted while CAS_L is toggled,N rows,N cols,DRAM,Column,Address,M-bit Output,M bits,N x M“SRAM”,Row,Address,A,Row Address,CAS_L,RAS_L,Col Address,Col Address,1,st M-bit Access,Col Address,Col Address,2,nd M-bit,3,rd M-bit,4,th M-bit,Fast Page Mode OperationRegula,5.8,虚拟存储器基本原理,允许应用程序的大小,超过主存容量。目的是提高存储系统的容量,帮助,OS,进行多进程管理,每个进程可以有自己的地址空间,提供多个进程空间的保护,可以将多个逻辑块映射到共享的物理存储器上,静态重定位和动态重定位,应用程序运行在虚地址空间,虚实地址转换对用户是透明的,虚拟存储管理的是主存辅助存储器这个层面上,失效:页失效或地址失效,块:页或段,5.8 虚拟存储器基本原理允许应用程序的大小,超过主存容量,存储层次汇总ppt课件,Cache,与,VM,的区别,目的不同,Cache,是为了提高访存速度,VM,是为了提高存储容量,替换的控制者不同,Cache,失效由硬件处理,VM,的页失效通常由,OS,处理,一般页失效开销很大,因此替换算法非常重要,地址空间,VM,空间由,CPU,的地址尺寸确定,Cache,的大小与,CPU,地址尺寸无关,下一级存储器,Cache,下一级是主存,VM,下一级是磁盘,大多数磁盘含有文件系统,文件系统寻址与主存不同,它通常在,I/O,空间中,,VM,的下一级通常称为,SWAP,空间,Cache与VM的区别目的不同,虚拟存储器页式管理的典型参数与,Cache,的比较,从表中看(与,Cache,参数相比),除了失效率较低,其他参数都比,Cache,大,虚拟存储器页式管理的典型参数与Cache的比较从表中看(与,页式管理和段式管理,VM,可分为两类:页式和段式,页式:每页大小固定,段式:每段大小不等,两者区别:,P241,表5.31,GCGarbage Collector,页式管理和段式管理VM可分为两类:页式和段式,存储层次汇总ppt课件,VM,的四个问题(1/2),映象规则,选择策略:低失效率和复杂的映象算法,还是简单的映射方法,高失效率,由于失效开销很大,一般选择低失效率方法,即全相联映射,查找算法用附加数据结构,固定页大小用页表,VPN PPN,Tag,标识该页是否在主存,可变长段 段表,段表中存放所有可能的段信息,段号 段基址 再加段内偏移量,可能由许多小尺寸段,页表,页表中所含项数:一般为虚页的数量,功能:,VPNPPN,,方便页重新分配,有一位标识该页是否在内存,VM的四个问题(1/2)映象规则,页表项问题,按虚页的数量设置页表大小,可能页表非常大,例如32位虚地址,4,KB/,页,页表项需要 4,GB/4KB,项,需要页大小与页表项数目的平衡问题,另一方案:反向页表,基本思路:页表反映物理页的数目,而不是虚拟页的数目,用,Hash,表 完成虚拟页号到物理页号的转换,通过比较,Tag,确定是否是所需的,PN,如果是,再检测其是否在内存,如果不是:则从硬盘上查找全部页表,隐含问题:可能需要两次访问硬盘,页表项问题按虚页的数量设置页表大小,可能页表非常大,VM,的四个问题(2/2),替换规则,LRU,是最好的,但真正的,LRU,方法,硬件代价较大,用硬件简化,通过,OS,来完成,为了帮助,OS,寻找,LRU,页,每个页面设置一个,use bit,当访问主存中一个页面时,其,use bit,置位,OS,定期复位所有使用位,这样每次复位之前,使用位的值就反映了从上次复位到现在的这段时间中,哪些页曾被访问过。,当有失效冲突时,由,OS,来决定哪些页将被换出去。,写策略,总是用写回法,因为访问硬盘速度很慢。,VM的四个问题(2/2)替换规则,存储层次汇总ppt课件,页面大小的选择,页面选择较大的优点,减少了页表的大小,如果局部性较好,可以提高命中率,页面选择较大的缺点,内存中的碎片较多,内存利用率低,进程启动时间长,失效开销加大,页面大小的选择页面选择较大的优点,Alpha VPNPPN,Alpha VPNPPN,TLB(Translation look-aside Buffer),页表一般很大,存放在主存中。,导致每次访存可能要两次访问主存,一次读取页表项,一次读写数据,解决办法:采
展开阅读全文