2

There are three types of hazard in the five stage of pipeline:-

1) Control hazard : - if/jump

2) Data hazard :- RAW(read after write), WAR ( write after read), WAW (write after write)

3) structural hazard :- Structural hazards are when two instructions might attempt to use the same resources at the same time ( as in wiki)

which type of hazard does cache miss fall into?

4

1 回答 1

3

将危险视为错误预测 - 假设没有冲突,管道会推测性地推进每个周期。在您描述的情况下,这可能是错误的 - 如果下一阶段来自错误的程序计数器/inst-pointer,或者计算源没有及时更新,或者某些资源没有及时准备好。现在,此分类法中通常不考虑缓存未命中,可能是因为它是特定于实现的。您可以对可变延迟执行说同样的话。你没有准备好数据,所以你只是停滞不前,这里没有使用陈旧数据或从错误路径获取虚假代码的实际风险。请注意,内存访问仍然可能是 RAW(在这种情况下,在存储后加载),并且像寄存器绑定的 RAW 一样被视为数据危害。

于 2013-06-05T23:29:06.753 回答