cache访问过程
cpu获取数据–》通过给的主存地址,判断cache是否缓存有此数据–》有从cache拿,没有从主存拿
需要注意的是,无论是二级缓存、三级缓存还是内存都不能存储处理器操作的原始指令,这些指令只能存储在CPU的一级指令缓存中,而余下的二级缓存、三级缓存和内存仅用于存储CPU所需数据。
cache与主存之间是字块传送。
每个缓冲块需要一个标记来表示当前存放的事哪一个主存块,该标记的内容相当于主块的编号。
一般一级缓存用来缓存指令,二级、三级缓存等用来存储数据。
主存地址映射
直接映射(一路组相联):一个主存块,只能放到一个缓存块
组相联映射:一个主存块,能放到一个n个缓存块(n<缓存块的总数),下图中一个主存块可以选择放在同一组的2个缓存块之一。
全相联映射:一个主存块,能放到所有缓存块之一中。