高速缓存(gold_axe)
2020-02-22 本文已影响0人
胖达_4b7e
每个cpu都有各自的高速缓存
相当于一个hash table , 内存地址---数据副本 或者 准备写入内存的数据
高速缓存 ,分多级, 第一级一般在cpu内部, 访问只要2-4个时钟
内部构造
每个cpu都有各自的高速缓存
相当于一个hashMap , 内存地址---数据副本 或者 准备写入内存的数据
缓存条目是读写的最小单位
就是说, 虽然里面可能存了好几个变量, cpu这次只想要一个,和内存交互的时候也只能整个缓存条目
读写
cpu要执行内存访问操作的时候, 解码 内存地址 得到 桶---Tag----Data Block中的哪里
Flag看缓存条目的状态(失效还是怎么样)
如果数据已经失效了 就是 读未命中, 就需求真的去内存拿了
这会导致 处理器停顿(Stall)., 影响效率