MESI 协议消息
Read:用来获取指定物理地址上的缓存行(cache line) 数据。
Read Response:该消息携带了 “read” 消息所请求的数据。read response 可能来自于 memory 或者是其他 CPU 缓存。
Invalidate:该消息将其他 CPU 缓存 中指定的数据设置为失效。该消息携带物理地址,其他 CPU缓存在收到该消息后,必须进行匹配,发现在自己的缓存行中有该地址的数据,那么就将其从缓存行中移除,并响应 Invalidate Acknowledge 回应。
Invalidate Acknowledge:该消息用做回应 Invalidate 消息。
Read Invalidate:该消息中带有物理地址,用来说明想要读取哪一个缓存行中的数据。这个消息还有 Invalidate 消息的效果。其实该消息是 read + Invalidate 消息的组合,发送该消息后 cache 期望收到一个 read response 消息。Invalidate Acknowledge和read response肯能并不是同时返回来的,这就导致指令重排序。
Writeback:该消息带有地址和数据,该消息用在 modified 状态的缓存行被置换时发出,用来将最新的数据写回 memory 或其他下一级 cache 中。
Store Forwarding:能够直接从store buffer中读取数据。
Invalid Queue:失效队列。
mesi协议的字段代表的含义
于 2022-06-19 20:27:22 首次发布