在阅读有关缓存一致性系统(例如 MESI)的信息时,我对所涉及的时间并不清楚。
考虑 Core1 想要写入其本地缓存上状态为 MESI S 的缓存行的情况。本地缓存控制器必须启动 RFO 以使缓存一致性域中所有其他缓存上的该行无效。
我相信所有缓存事务实际上都基于时钟间隔,因此在 RFO 发生的时钟间隔内,其他核心(例如 Cores2)不允许从其本地缓存中读取该缓存行(即使在 RFO 发生之前线在本地处于 S MESI 状态)。
您能从时钟时序的角度帮助我理解事物的工作原理吗?
在阅读有关缓存一致性系统(例如 MESI)的信息时,我对所涉及的时间并不清楚。
考虑 Core1 想要写入其本地缓存上状态为 MESI S 的缓存行的情况。本地缓存控制器必须启动 RFO 以使缓存一致性域中所有其他缓存上的该行无效。
我相信所有缓存事务实际上都基于时钟间隔,因此在 RFO 发生的时钟间隔内,其他核心(例如 Cores2)不允许从其本地缓存中读取该缓存行(即使在 RFO 发生之前线在本地处于 S MESI 状态)。
您能从时钟时序的角度帮助我理解事物的工作原理吗?