【问题标题】:Cache miss penalty in deep RISC pipeline深 RISC 管道中的缓存未命中惩罚
【发布时间】:2011-05-11 10:46:32
【问题描述】:

为什么在深度流水线处理器中缓存未命中损失更大?

是不是因为如果错过发生在流水线的某个后期阶段,停顿期会更长?还是因为管道中的指令太多?

【问题讨论】:

  • 我认为您应该编辑您的问题以描述处理器管道中的几种不同情况。有数据缓存未命中,指令缓存未命中。还有一个管道停顿和管道中的气泡插入。在此处查看有关管道的一些信息:[链接]www.seas.gwu.edu/~bhagiweb/cs211/lectures/pipeline.ppt

标签: caching cpu-architecture pipeline


【解决方案1】:

通常您实施更深的管道以减少每个管道阶段的循环时间。

考虑两个有序的单问题流水线处理器微架构。

uA1 具有 5 级流水线和 2 ns 周期时间。 uA2 有 10 级流水线和 1 ns 循环时间。

完整的高速缓存未命中必须(至少)从 DRAM 加载整个高速缓存行。 假设需要 100 ns,包括行激活、行字的突发读取和行预充电。

当 uA1 发生缓存未命中时,它会停止 100 ns,例如50 个时钟周期,例如50 个问题插槽。 当 uA2 发生缓存未命中时,它会停止 100 ns,例如100 个时钟周期,例如100 个问题槽。

这里的高速缓存未命中惩罚(以未命中的指令发出槽表示)在流水线更深的处理器中是两倍。

【讨论】:

    猜你喜欢
    • 2014-04-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-11-01
    • 2021-09-27
    • 2015-05-23
    • 2018-12-06
    • 2021-06-13
    相关资源
    最近更新 更多