计算机对主存的要求是速度快、容量大、价格低,但现实情况三者很难统一于一身,很难找到这种存储器件。为了能解决这一需求,在主存与CPU之间增加一级 cache,其主要目的是为解决(1),每次CPU访问主存时,都先要查询该单元数据是否已调入cache。为了把主存

admin2009-02-15  53

问题 计算机对主存的要求是速度快、容量大、价格低,但现实情况三者很难统一于一身,很难找到这种存储器件。为了能解决这一需求,在主存与CPU之间增加一级 cache,其主要目的是为解决(1),每次CPU访问主存时,都先要查询该单元数据是否已调入cache。为了把主存地址变成cache地址,常常使用3种cache地址映像方式,其时全相联地址映像方式,使用起来最方便、最灵活但查找很困难,为了达到cache的要求,实现时常常采用(2),按照cache字块标志的内容访问映像存储器,查找命中的cache字块地址。

选项 A、硬件的相联存储器
B、软件的方法
C、软硬件结合的方法
D、微程序

答案A

解析 主存用来存放正在运行的程序和数据,计算机执行程序时要频繁地访问主存,为了提高计算速度,除了要求CPU速度快外,还必须要求主存的存取速度也要快。现实情况是CPU的速度比主存的存取速度高一个数量级。为了提高访存速度,在主存与CPU之间构造一个高速的缓冲存储器,用来存放若干条正在和将要执行的程序和数据,它是主存有关内容的一个副本,访问高速缓存的数据,如同访问主存一样,但它可以快速存取,大大提高了指令执行速度。由于cache容量较小,cache容量要远远小于主存容量,地址位数也小于主存地址位数,当主存有关单元内容调入cache时,放在cache什么地方,这是一个必须解决的问题,也就是所谓cache地址映像方式问题。其中使用最灵活最方便的映像方式是全相联地址映像方式。主存每次调入cache一个数据块,这个数据块可以放在cache任意一个数据块中。但在具体访存时,首先必须先查找cache,确定这个数据块是否已在cache中存放,就必须把主存的数据块地址与cache中每一个数据块的字块标志逐一读出来比较一遍,才能发现要找的数据块是否已在cache中存放,这种查询的工作量很大,当然时间很长,是cache不能接受的。为了加快读出此较速度,最好的办法是使用按内容访问的相联存储器,这时不须按顺序读出每一个cache地址单元进行比较,而是按照存储的内容访问存储器,把cache字块标志与主存高位地址相同的cache单元读出来,即是所要求的单元数据。相联存储器是一个高速的硬件装置,其速度是很快的。
转载请注明原文地址:https://kaotiyun.com/show/XXxZ777K
0

相关试题推荐
最新回复(0)