나무모에 미러 (일반/밝은 화면)
최근 수정 시각 : 2026-09-20 18:27:50

Arm Neon



<bgcolor=#96834a> 명령어 집합
CISC x86 (AMD64● · IA-32● · IA-16) · M68K · MC68xx · MOS 65xx · Z80 · 8080 · 8051
System/360 · z/Architecture · PDP-11 · VAX
RISC Arm (A64 · A32 · T32) · RISC-V● · MIPS● · DEC Alpha● · Power ISA IBM Power · PowerPC · CELL-BE
LoongArch · OpenRISC · PA-RISC · SPARC
SuperH · Xtensa · AVR AVR32
VLIW
EPIC
E2K · IA-64 · Crusoe

<rowcolor=#fff> Arm 아키텍처
명령어 집합 A64 · A32 · T32 Thumb · Thumb-2 · Thumb-EE · Jazelle
SIMD · 부동소수점 확장
부동소수점 VFP · FP16 · BF16
SIMD/벡터 Neon · MVE Helium · SVE SVE2
행렬 SME SME2
기타 확장
보안 TrustZone · PAC · BTI · MTE · TME · CCA
암호화 AES · PMULL · SHA1 · SHA2 · SHA3 · SM3 · SM4
메모리 LSE LSE2 · LSE128 · LRCPC LRCPC2 · LRCPC3
가상화 VHE · NV2

1. 개요2. 특징3. 역사
3.1. ARMv73.2. ARMv8 및 이후
4. 사양
4.1. AArch32 (ARMv7)4.2. AArch64 (ARMv8/ARMv9)
5. 기타6. 관련 항목

1. 개요

Arm 아키텍처의 SIMD 확장 명령어 세트이다. ARMv8 이후 정식 명칭은 Advanced SIMD이며, Neon은 Arm의 상표명이다.

ARMv7-A에서 선택 사항으로 도입되었으며, ARMv8-A 이후 보편화되었다. 처리 단위는 최대 128비트이다.

후속 확장으로 128비트와 2048비트 사이 가변 길이 구현을 지원하는 Arm SVE가 있으나, 대부분의 지원 프로세서가 SVE를 128비트로 구현하였으며, Apple Silicon에서는 지원되지 않거나 극히 제한적으로 지원되기 때문에 여전히 Neon이 주력으로 사용되고 있다.

2. 특징

AArch32 모드에서의 실행 모델과 AArch64 모드에서의 실행 모델이 다르다.

3. 역사

Arm 아키텍처 초기에는 DSP/SIMD 명령어가 없었으며, 2000년대 초반 ARMv6에서 SIMD 명령어가 처음 도입되었지만 32비트 크기의 일반 레지스터를 재활용하는 방식이어서 처리량에 한계가 있었다.

이에 따라 당시 ARM 기반 XScale을 개발하던 인텔이 MMX를 이식한 커스텀 SIMD 확장인 iwMMXt를 발표하는 등 벤더별로 SIMD 구현이 파편화되었다.

3.1. ARMv7

2005년 ARMv7-A 발표와 함께 선택사항으로 SIMD 확장인 NEON이 도입되었다.

2000년대 후반부터 TI OMAP, 삼성 허밍버드 등의 NEON 지원 프로세서를 탑재한 스마트폰이 출시되었으나, Tegra 2 등 NEON을 지원하지 않는 프로세서도 있었으며 인텔에게 XScale 사업을 넘겨받은 Marvell은 한동안 자체 확장인 iwMMXt를 사용하였다.

3.2. ARMv8 및 이후

2011년 ARMv8-A에서 Advanced SIMD라는 이름으로 계승되었다.

4. 사양

각 모드에 맞는 사양을 서술한다.

4.1. AArch32 (ARMv7)

4.2. AArch64 (ARMv8/ARMv9)

5. 기타

6. 관련 항목