由于高位多体交叉存储器在一个存储体内地址连续,所以一个程序的指令极大可能只分布在一个存储体上,这样的只能顺序读取,而无法充分利用并行存取。
即一次并行取出来的指令或数据不在一个程序的局部上,跨度很大,可能是在一个程序的首尾,或不同的程序,也就不再满足局部性原理。
三种不同类型的局部性:
1、时间局部性(Temporal Locality):如果一个信息项正在被访问,那么在近期它很可能还会被再次访问。程序循环、堆栈等是产生时间局部性的原因。
2、空间局部性(Spatial Locality):在最近的将来将用到的信息很可能与正在使用的信息在空间地址上是临近的。
3、顺序局部性(Order Locality):在典型程序中,除转移类指令外,大部分指令是顺序进行的。顺序执行和非顺序执行的比例大致是5:1。此外,对大型数组访问也是顺序的。