Sorry, your browser is not supported. We recommend upgrading your browser.
We have done our best to make all the documentation and resources available on old versions of Internet Explorer, but vector image support and the layout may not be optimal. Technical documentation is available as a PDF Download.
Neon Programmer's Guide for Armv8-A
Introducing Neon for Armv8-A
Check Your Knowledge
Neon is a brand name which refers to Arm’s implementations of the Advanced SIMD Architecture. Although the two terms are often used interchangeably, Neon is not strictly speaking a feature of the Arm Architecture. Those looking to learn more about Neon from the Architecture Reference Manual or the Cortex-A Technical Reference Manuals, should therefore search for “Advanced SIMD” rather than Neon.
SIMD stands for Single Instruction Multiple Data. Since SIMD instructions can perform more operations than an equivalent SISD (Single Instruction Single Data) instruction, a program using SIMD instructions can process more data per instruction on average. If the execution time of the SIMD and SISD instructions are the same, the program will speed up.
Import a library using Neon, e.g. the Arm Compute Library or the Arm Performance Libraries. Use a compiler supporting Neon code generation, e.g. the Arm Compilers or GCC. Use the Neon Intrinsics in C or C++ code. Write Arm assembly which uses Advanced SIMD instruction set.