cache和主存的三种映射方式

cache和主存的三种映射方式

ID:15399547

大小:48.50 KB

页数:6页

时间:2018-08-03

cache和主存的三种映射方式_第1页
cache和主存的三种映射方式_第2页
cache和主存的三种映射方式_第3页
cache和主存的三种映射方式_第4页
cache和主存的三种映射方式_第5页
资源描述:

《cache和主存的三种映射方式》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、Cache与主存之间的全相联映射,直接映射和组相联映射的区别1.高速缓冲存储器的功能、结构与工作原理  高速缓冲存储器是存在于主存与CPU之间的一级存储器,由静态存储芯片(SRAM)组成,容量比较小但速度比主存高得多,接近于CPU的速度。Cache的功能是用来存放那些近期需要运行的指令与数据。目的是提高CPU对存储器的访问速度。为此需要解决2个技术问题:一是主存地址与缓存地址的映象及转换;二是按一定原则对Cache的内容进行替换。  Cache的结构和工作原理如图2.3.1所示。  主要由三大部分组成:  Cache存储体:存放由主存调入的指令与数据块。  地址转换部

2、件:建立目录表以实现主存地址到缓存地址的转换。  替换部件:在缓存已满时按一定策略进行数据块替换,并修改地址转换部件。2.地址映象与转换  地址映象是指某一数据在内存中的地址与在缓冲中的地址,两者之间的对应关系。下面介绍三种地址映象的方式。  1.全相联方式  地址映象规则:主存的任意一块可以映象到Cache中的任意一块  (1)主存与缓存分成相同大小的数据块。  (2)主存的某一数据块可以装入缓存的任意一块空间中。  全相联方式的对应关系如图2.3.2所示。如果Cache的块数为Cb,主存的块数为Mb,则映象关系共有Cb×Mb种。  图2.3.3示出了目录表的格式及

3、地址变换规则。目录表存放在相关(联)存储器中,其中包括三部分:数据块在主存的块地址、存入缓存后的块地址、及有效位(也称装入位)。由于是全相联方式,因此,目录表的容量应当与缓存的块数相同。 举例:某机主存容量为1M,Cache的容量为32KB,每块的大小为16个字(或字节)。划出主、缓存的地址格式、目录表格式及其容量。      容量:与缓冲块数量相同即211=2048(或32K/16=2048)。  优点:命中率比较高,Cache存储空间利用率高。  缺点:访问相关存储器时,每次都要与全部内容比较,速度低,成本高,因而应用少。  2.直接相联方式  地址映象规则:主存

4、储器中一块只能映象到Cache的一个特定的块中。  (1)主存与缓存分成相同大小的数据块。  (2)主存容量应是缓存容量的整数倍,将主存空间按缓存的容量分成区,主存中每一区的块数与缓存的总块数相等。  (3)主存中某区的一块存入缓存时只能存入缓存中块号相同的位置。  图2.3.4示出了直接相联映象规则。可见,主存中各区内相同块号的数据块都可以分别调入缓存中块号相同的地址中,但同时只能有一个区的块存入缓存。由于主、缓存块号相同,因此,目录登记时,只记录调入块的区号即可。   图2.3.5示出了主、缓冲地址格式、目录表的格式及地址变换规则。主、缓存块号及块内地址两个字段完

5、全相同。目录表存放在高速小容量存储器中,其中包括二部分:数据块在主存的区号和有效位。目录表的容量与缓存的块数相同。   地址变换过程:用主存地址中的块号B去访问目录存储器,把读出来的区号与主存地址中的区号E进行比较,比较结果相等,有效位为1,则Cache命中,可以直接用块号及块内地址组成的缓冲地址到缓存中取数;比较结果不相等,有效位为1,可以进行替换,如果有效位为0,可以直接调入所需块。  优点:地址映象方式简单,数据访问时,只需检查区号是否相等即可,因而可以得到比较快的访问速度,硬件设备简单。  缺点:替换操作频繁,命中率比较低。  举例:上例中,主存容量为1M,C

6、ache的容量为32KB,每块的大小为16个字(或字节)。划出主、缓存的地址格式、目录表格式及其容量。   容量:与缓冲块数量相同即211=2048(或32K/16=2048)。  3.组相联映象方式  组相联的映象规则:  (1)主存和Cache按同样大小划分成块。  (2)主存和Cache按同样大小划分成组。  (3)主存容量是缓存容量的整数倍,将主存空间按缓冲区的大小分成区,主存中每一区的组数与缓存的组数相同。  (4)当主存的数据调入缓存时,主存与缓存的组号应相等,也就是各区中的某一块只能存入缓存的同组号的空间内,但组内各块地址之间则可以任意存放,即从主存的组

7、到Cache的组之间采用直接映象方式;在两个对应的组内部采用全相联映象方式。  图2.3.6示出了组相联的映象关系,图中缓存共分Cg个组,每组包含有Gb块;主存是缓存的Me倍,所以共分有Me个区,每个区有Cg组,每组有Gb块。那么,主存地址格式中应包含4个字段:区号、区内组号、组内块号和块内地址。而缓存中包含3个字段:组号、组内块号、块内地址。主存地址与缓存地址的转换有两部分,组地址是按直接映象方式,按地址进行访问,而块地址是采用全相联方式,按内容访问。组相联的地址转换部件也是采用相关存储器实现,见图2.3.7。  相关存储器中每个单元包含有:主存地

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。