NEON
読み:ネオン
外語:NEON

 ARMの標準SIMD命令セットAdvanced SIMDの通称であり商標
目次

概要
 x86でFPUの代わりにSSEが利用できるように、ARMではVFPの代わりにNEONを使うことができる。
 標準的な実装では、半精度拡張を実装しているのは、VFPv3またはNEONのみである。

特徴

命令セット
 完全に新規のオペコードを大量追加する余裕は既にARMにはない。
 では命令追加はどうしているかというと、ARMが持っているコプロセッサー制御命令を流用している。
 ARMは、仕様上、最大16個までのコプロセッサーに対応しているが、このうちCP10とCP11に、VFPとNEON拡張命令を追加している。
 コプロセッサー制御命令を使うというコンセプトはx86のFPU命令(x87命令)などにも見られ、古典的な方法と言える。

Cortex-A8
 この機能は、Cortex-A8以降つまりARMv7(ARMv7-A)命令セット以降で対応する。

QUALCOMM
 QUALCOMMMSM内のCPUであるScorpionおよびKraitでは、NEONに対応する128ビット幅のSIMD演算ユニット「VeNum」(Vector Numerics)が実装されており、NEON命令が利用できる。
 つまり、ソフトウェアからするとARMv7相当だが、実行エンジン(パイプライン)はCortex-A8とは異なる独自の実装ということを意味する。

再検索