囹狐冲吧 关注:4贴子:546

回复:‖浅谈 Cache Memory‖

取消只看楼主收藏回复

定制化领域依然会从狭 义广义 Cache 的设计思 想中受益。 Cache 的核 心是数据缓冲组织结 构,通路连接方法,管 理策略和各类算法,这 些内容较为基础。世间 万物,千变万变,基础 内容的变化较为缓慢。
使用定制会 缓解通用处理器做遇到 的各类瓶颈,而不是消 除。主存储器的容量和 延时的不断增加依然是 客观存在的事实。通用 处理器领域的解决方法 是引入更多级别的 Cache 。多核处理器的 进一步发展使得多级 Cache 间的组成结构异 常复杂。


来自手机贴吧17楼2016-05-21 22:04
回复
    在 CPU Core 中,一 条存储器指令首先经过 取值,译码, Dispatch 等一系列操作后,率先 到达 LSU(Load/Store Unit) 部件。 LSU 部件可 以理解为存储器子系统 的最高层,在该部件中 包含 Load Queue 与 Store Queue 。在 多数处理器的存储器子 系统中, LSU 是最顶 层,也是指令流水线与 Cache 流水线的联系 点。


    来自手机贴吧18楼2016-05-21 22:06
    回复
      存储器读操 作获得物理地址后将进 行 Cache Block 的状态检 查,是 Miss 还是 Hit , 如果 Cache Hit ,则进行 数据访问,在获得所需 数据后更新在 LSU 中的 状态信息。
      如果在 L1 Cache 中 Miss ,情况略微复杂一 些。在现代处理器系统 中, Non-Blocking Cache 基本上是一个常识般的 需求,为此首先需要在 MSHR 中分配空余 Entry ,之后通过 L1 Cache Controller 向其下 Memory Hierarchy 发送 Probe 请求。
      在 L1 Cache Controller 中,大多使用 Split Transaction 发送这 个 Probe 请求,之后经 过一系列复杂的操作, 这个操作涉及多核之间 的 Cache 一致性,不同 的一致性协议对此的处 理不尽相同。在获取最 终数据之后,回送 Reply 消息。 LSU 在收到这个 Reply 消息后将数据传递 给指令流水线,并释放 MSHR 中的对应 Entry 。


      来自手机贴吧19楼2016-05-21 22:06
      回复
        在微架构的 设计中,缩短 Cache 的 访问延时与提高带宽是 Cache 流水设计的一个 永恒话题。
        在 LSU 部件中除了具有 LSQ 之 外,还有许多异常复杂 的控制逻辑和与指令流 水线进行数据交换的数 据通路,是一个微架构 的存储器子系统设计的 起始点,是存储器指令 的苦难发源地。


        来自手机贴吧20楼2016-05-21 22:07
        回复