This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
我的cache理解:使用cache主要目的在于,它的读写速度与CPU的频率一致,效率高。但是如果我的DDR2也有300M的带宽的话,那么cache是否还有使用的必要性?
我从两个方面来回答:
#1. CPU访问DDR时需要送行,列地址,并且DDR要在数个周期后才能将译中的单元的数据送出或写入,有效数据是在其中某个时钟送出的、或写入的,但总的访问周期要加上前面提到的开销,所以当CPU读写DDR时的有效数据带宽远远小于理论带宽。DDR的带宽只有在用DMA访问时才能达到最高,因为是连续的burst访问,节省开销。在不使能Cache的情况下的CPU拷贝,效率相当低。
#2. Cache的机制是一次将一个Line size的数据通过burst方式读入,后面line size-1的数据访问都在Cache中进行,从而提高速度。