高速缓存的映像方法

1. 直接映像

内存地址 = 内存区号 + 区间块号 + 块内地址

1)将内存按高速缓存的容量分区
2)将内存和高速缓存按相同大小分块
3)将存入高速缓存的块的所属区号和块号存入相联存储器和高速缓存块相联
4)CPU传出内存地址时取内存地址高区号和相联存储器对比区号对比
5)如果区号准确则按照区间块取出高速缓存地址

高速缓存的一只能映射不同区号相同块号的内存块

2. 全相联映像

内存地址 = 内存块号 + 块内地址

1)将高速缓存和内存按相同大小分块
2)将内存的块号存入相联存储器中和对应的高速缓存块地址相联
3)如果CPU传出的内存地址的块号和相联存储器存储的某一块的块相同则取出相应的块内地址

3. 级相联映像

级相联等价于全相联和直接相联的组合

内存地址 = 内存区号 + 内存级号 + 块号 + 块内地址

1)给内存和高速缓存按相同大小分块
2)给内存每个块和高速缓存分块数相同的级
3)高速缓存中任意一个级的块只能存入内存中相同级号不同区号的内存块,同级的块可以任意存入
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章