-1

我正在寻找有关这两个 32 加法器乘法硬件如何工作的流程图说明:

在此处输入图像描述

另一个:

在此处输入图像描述

流程图如何描述硬件的示例如下所示:

在此处输入图像描述

老实说,我只是喜欢流程图,所以我对正在发生的事情有更好的了解。

最好的,谢谢!

4

1 回答 1

1

在前两个图表中,只有第一个似乎部分正确。我在Computer-Organization-Design中看到了第二张图,对我来说它也不正确(或者至少我无法破译:-))。

所以让我试着只解释第一张图

Mcand = Multiplicand register

Mplier0 = 0th bit of the Multiplier register (lsb)

Mplier1 = 1st bit of the Multiplier register

Mplier31 = 31st bit of the Multiplier register (msb)

Mcand.Mplier1 正在执行逻辑“AND”运算 Multiplicand 和 Multiplier 第一位。例如,如果 Mcand 为 1101,Mplier1 为 1,则结果为 1101,如果 Mplier1 为 0,则结​​果为 0000

现在最右上角的 ALU 有两个输入

  • 左输入: Mcand.Mplier1 一个 32 位值,如上所述。
  • 右输入的 32 位值由 31 位为零,如图所示。其余 30 位是 Mcand.Mplier0 的最重要位,除了第 0 位。第 0 位直接设置 Product0 位(即 Product 寄存器的第 0 位)

现在第二层(或行)的 ALU 也有两个输入。

  • 左输入: Mcand.Mplier2 一个 32 位值,如上所述。
  • 右输入的第 31 位必须是第一个 ALU 的“执行”,图表将其设置为零,这似乎是不正确的。其余 31 位从第一个 ALU 输出的最高有效 31 位设置。第一个 ALU 的剩余第 0 位输出直接设置 Product1 位。

对剩余的 30 个 ALU 重复此操作。

于 2015-10-16T01:52:53.897 回答