问题 单项选择题

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

(2)处填()。

A.硬件的相联存储器

B.软件的方法

C.软硬件结合的方法

D.微程序

答案

参考答案:A

解析:

主存用来存放正在运行的程序和数据,计算机执行程序时要频繁地访问主存,为了提高计算速度,除了要求CPU速度快外,还必须要求主存的存取速度也要快。现实情况是CPU的速度比主存的存取速度高一个数量级。为了提高访存速度,在主存与CPU之间构造一个高速的缓冲存储器,用来存放若干条正在和将要执行的程序和数据,它是主存有关内容的一个副本,访问高速缓存的数据,如同访问主存一样,但它可以快速存取,大大提高了指令执行速度。

由于cache容量较小,cache容量要远远小于主存容量,地址位数也小于主存地址位数,当主存有关单元内容调入cache时,放在cache什么地方,这是一个必须解决的问题,也就是所谓cache地址映像方式问题。其中使用最灵活最方便的映像方式是全相联地址映像方式。主存每次调入cache一个数据块,这个数据块可以放在cache任意一个数据块中。但在具体访存时,首先必须先查找cache,确定这个数据块是否已在cache中存放,就必须把主存的数据块地址与cache中每一个数据块的字块标志逐一读出来比较一遍,才能发现要找的数据块是否已在cache中存放,这种查询的工作量很大,当然时间很长,是cache不能接受的。为了加快读出此较速度,最好的办法是使用按内容访问的相联存储器,这时不须按顺序读出每一个cache地址单元进行比较,而是按照存储的内容访问存储器,把cache字块标志与主存高位地址相同的cache单元读出来,即是所要求的单元数据。相联存储器是一个高速的硬件装置,其速度是很快的。

单项选择题
问答题 简答题