【发布时间】:2017-03-04 23:53:22
【问题描述】:
是否可以在硬件 (RTL) 中实现缓存一致性协议(如窥探一致性协议和 MESI/MOESI)?我正在为多核缓存环境设计一个 RTL,并且需要在其中实现缓存一致性协议以获得所有处理器的一致和一致的数据。这只是一个学术练习。
任何线索确实会有所帮助。我有 MSI 的状态图,我应该先尝试实现 FSM 吗?我正在开发可合成的verilog/systemverilog的代码。
每个缓存块的 FSM 应该是不同的,那么是否有一个多路复用器连接到 FSM 状态机控制器,如下所示?
【问题讨论】:
-
鉴于真正的 CPU 多年来一直在使用(变体)MESI,很明显它可以在硬件中实现!这是一个真正的问题吗?
-
我不知道它可以在硬件中实现。每个缓存行都有自己的 FSM 吗?
-
IDK 如何 Intel/AMD/ARM/其他所有人设计他们的缓存,但实际硬件中的真正缓存使用 MESI / MOESI / MESIF / 任何其他变体,针对具有多个未完成的未命中、多个读写端口以及现代高性能缓存所需的所有常见功能的流水线操作。 (而且像你这样的学习练习可能不会。)我不是硬件专家,所以我不能告诉你更多。
标签: caching architecture verilog processor