单周期乘法和硬件划分是什么意思?

pan*_*088 3 c embedded stm32

我正在阅读数据表并阅读"单周期乘法和硬件划分"作为STM32规范的一部分,我不确定我理解这意味着什么.根据我在网上看到的,乘法通常比除法更容易计算.这是否意味着STM可以在一个周期内计算乘法和除法?

请协助.

Man*_*nex 9

当涉及乘法器时,意味着它只需要一个时钟周期(这是100Mhz,10纳秒)来执行操作.

但是,除法通常以迭代的方式逐位执行,并且应该研究特定的实现(核心指令集).

看看Cortex M系列,您会看到乘法实际上是单周期,但是该分区持续2-12个周期,并在关于此的脚注中:

除法运算使用提前终止,以根据输入操作数中前导1和0的数量最小化所需的周期数.

添加:

但请注意,唯一的INTxINT乘法是单周期,而LONGxLONG持续3-5个周期(因为LONGxLONG mult可以作为INTxINT乘法和加法的组合执行)

  • 也许"聪明"的措辞:*"单周期乘法和硬件划分"*,实际上并没有说除法是单周期 - 只是它是在硬件中执行的. (7认同)