学习目标

  • 实现 MESI 控制器
  • 处理一致性请求
  • 验证正确性

4.1 Cache 控制器

always @(*) begin
    case (state)
        MODIFIED: if (bus_rd) begin
            flush_data();
            state_next = SHARED;
        end
        EXCLUSIVE: if (local_write)
            state_next = MODIFIED;
        SHARED: if (local_write) begin
            send_bus_upgr();
            state_next = MODIFIED;
        end
    endcase
end

思考:如何处理并发请求?

下一步

第 5 章:总线互连

更新时间: