看不懂Mips、ALU、Clock Cycle相关解决方案

Can't understand Mips, ALU, Clock Cycle Related Solution

我正在复习我之前的期中考试,但提供的解决方案没有解释下面的问题......这是问题:

问题 11. 假设您的 MIPS 处理器上的乘法器硬件设置如下 上周讨论的乘数。初始化 ALU 需要一个时钟周期,product 注册和所有其他必要的硬件。每个阶段需要3个时钟周期 (一个移位、测试、添加等序列被认为是一个阶段)乘法。如果时钟 周期为1纳秒(ns),两个八位数相乘需要多长时间 进入 16 位产品寄存器?被乘数寄存器为 8 位宽。

a) 50 纳秒 b) 49 纳秒 c) 27 纳秒 d) 25 纳秒 e) 9 纳秒 f) 以上None.

它说答案是d(25ns)。只说答案不说解释

你能解释一下这是为什么吗?

我只是不知道我需要计算或研究什么才能得到这样的答案。

非常感谢..

我的猜测是,要乘以一个 8 位数字,您需要执行 shift-test-add 8 次,每个位一次。那是 8*3 个时钟。还有一个用于初始化。总共 25 个时钟或 25 ns。是不是太难了?

P.S。 MIPS 没有 8 位或 16 位通用寄存器。它们至少是 32 位的。