流缓冲预取(stream buffer prefetching),理学-计算机科学技术-计算机体系结构-微体系结构-预取,处理器中基于流缓冲的预取。流缓冲在计算机系统结构中是指位于高速缓存与主存储器(简称主存),或一级高速缓存与二级高速缓存之间的一种缓存结构。引入流缓冲及其预取机制主要是为了缓解由于预取而造成的高速缓存污染问题。原始的流缓冲及其预取的概念在1990年提出,用于在二级高速缓存和一级高速缓存之间预取数据。1994年对原先的概念进行引申,将流缓冲用于高速缓存和主存间的数据预取。采用该预取机制时,处理器可将预读的数据放入流缓冲中而非高速缓存中。与高速缓存结构类似,流缓冲中包含多个条目。每个条目由高速缓存块、有效位和与此对应的标签组成。其中,有效位表示当前高速缓存块的数据是否有效,标签用来进行地址比较。流缓冲的使用方法与先入先出队列(FIFO)类似,从头指针开始读取数据,新的数据将填入尾指针位置。当出现高速缓存缺失时,处理器首先在流缓冲的头指针处开始寻找数据,如果命中,才将该数据预读进高速缓存,从而不会造成高速缓存污染。同时,预读进高速缓存的数据将从流缓冲头部移除。