|
|
|
高速缓冲存储器是一种采用和CPU工艺相类似的半导体器件构成的存储装置,其速度可与CPU相匹配,但容量较小,只能存放一小段程序和数据。由于程序具有局部性,在短时间内程序和数据各自相对集中在一小块存储区内。因此在一小段时间内CPU可以不必访问主存,而访问速度较快的高速缓冲存储器,从而提高了指令的执行速度。
|
|
|
|
在高档微机中为了获得更高的效率,不仅设置了独立的指令高速缓冲存储器和数据高速缓冲存储器,还把高速缓冲存储器设置成二级或三级。高速缓存通常由双极型半导体存储器或SRAM组成。地址映像以及和主存数据交换机构全由硬件实现,并对程序员透明。
|
|
|
|
目前,访问高速缓冲存储器的时间一般为访问主存时间的1/4~1/10。由于半导体器件成本下降很快,高速缓冲存储器存储器已在大、中、小及微型机上普通采用。如下图所示为高速缓冲存储器的基本结构图,主存和高速缓冲存储器均是模块化的(例如以页为单位),并且两者之间交换数据以页为单位进行。CPU访存地址送到高速缓冲存储器,经相联存储映像表的地址映射变换,如果CPU要访问的内容在高速缓冲存储器中,则称为“命中”,则从高速缓冲存储器中读取数据送CPU;如果CPU要访问的内容不在高速缓冲存储器中,则称为“不命中”或“失靶”,则CPU送来地址直接到主存中读取数据。这时,访存地址是同时送到高速缓冲存储器和主存中的。如果访问“未命中”,除了本次访问对主存进行存取外,主存和高速缓冲存储器之间还要通过多字宽通路交换数据。主存内容在写入高速缓冲存储器过程中,如果高速缓冲存储器已满,要按某种替换策略将高速缓冲存储器中一页调出写回主存。这种替换算法可以是最近最少使用算法(LRU)或其他算法,这由相应的管理逻辑来实现。
|
|
|
|
|
|
|