我想我理解第一部分
(i)。我至少对此有答案。对于第二部分,我不确定这个实现会在哪里失败?第二部分让我完全难过。有谁知道这会失败的情况?
如果您想对第三部分有所了解,您将成为我整个班级的英雄。都被难住了。感谢您的任何意见。
MN-4363 处理器的臭名昭著的架构师 Tim FlimFlam 正在为基本 MIPS ISA 的流水线实现而苦苦挣扎。
(i) 为了实现转发,Tim 将 EX 和 MEM 级的逻辑输出(这些逻辑输出分别代表 EXMEM 和 MEMWB 锁存器的输入)连接到 IDEX 寄存器的输入。他声称他将能够以这种方式涵盖任何依赖。
• 这种实施会奏效吗?
• 他是否需要插入任何多路复用器?说明
1.生产者指令是负载。
2.生产者指令为R型。3.消费指令为R型。4.消费者指令是一个分支。5. 消费者指示是商店。
(ii) Tim 声称转发到 EX 阶段仅足以涵盖所有依赖项。• 提供两个实施失败的例子。
• 在这种情况下,“失败”是否对应于打破正确性约束?
(iii) Tim 试图确定跨管道阶段传输的最小信息量。考虑 R 类型、数据传输和分支指令,解释每个流水线寄存器应该有多宽,划分每个锁存器的不同字段。