为什么他们仍然有单独的浮点单元,如果在 ARM 皮质处理器中有用于快速处理浮点的 Neon。

Why they still have separate floating point unit , if there is Neon for fast processing of floating points in ARM cortex processors.

Neon(高级 SIMD)对于加法、减法、乘法和浮点运算(如单精度和双精度)非常快。为什么 ARM 公司仍然有另一个单独的浮点计算单元,如图所示。 我对此有点困惑。

这主要是为了说明,也是因为Floating-Point和Neon在ARMv8-A之前或在Aarch32中是两个独立的指令集。并且 Neon 仅支持浮点支持的子集(无双精度)。

Cortex-A9 显然就是这种情况,如图所示。

然而,在没有这种拆分的 ARMv8-A Aarch64 中,情况不再如此。取而代之的是 SIMD 与标量拆分,并且 SIMD 指令可以使用 64 位浮点数。