NPU ์์ธ
๊ฐ์
NPU(Neural Processing Unit)๋ ๋ชจ๋ฐ์ผ, ์ฃ์ง, ์๋ฒ ๋๋ ๊ธฐ๊ธฐ์์ ์ถ๋ก (Inference) ์ํฌ๋ก๋๋ฅผ ๊ฐ์ํํ๋๋ก ์ค๊ณ๋ ์ ์ฉ ํ๋ก์ธ์์ด๋ค. GPU๊ฐ ๋ฒ์ฉ ๋ณ๋ ฌ ์ฒ๋ฆฌ ๋ฅ๋ ฅ์ผ๋ก AI ํ๋ จ/์ถ๋ก ์ ์ฃผ๋ ฅ ํ๋ซํผ์ผ๋ก ์๋ฆฌ์ก๊ณ , TPU๊ฐ ํด๋ผ์ฐ๋ ๋๊ท๋ชจ ํ๋ จ์ ํนํ๋ ๋ฐ๋ฉด, NPU๋ 1W ๋ฏธ๋ง์ ์ด์ ์ ๋ ฅ์ผ๋ก ์์ญ TOPS(Tera Operations Per Second)์ ์ถ๋ก ์ฑ๋ฅ์ ๋ฌ์ฑํ์ฌ ์ฃ์ง ๊ธฐ๊ธฐ์์ ์ฆ์ ์ฌ์ฉ ๊ฐ๋ฅํ AI ์ถ๋ก ์ ๊ฐ๋ฅํ๊ฒ ํ๋ค.
NPU๋ SoC(System-on-Chip) ๋ด๋ถ์ CPU, GPU์ ํจ๊ป ํตํฉ๋์ด ๋์ํ๋ฉฐ, ์ฌ์ ํ๋ จ๋ ๋ชจ๋ธ์ ์๋ฐฉํฅ ์ ํ(Forward Pass)๋ฅผ ํ๋์จ์ด ์์ค์์ ์ง์ ์ํํ๋ค. Apple Neural Engine, Qualcomm Hexagon, Samsung Exynos NPU, MediaTek APU ๋ฑ ์ฃผ์ ๋ชจ๋ฐ์ผ ์นฉ ์ ์กฐ์ฌ๋ค์ด ์์ฒด NPU๋ฅผ ์ค๊ณํ๊ณ ์์ผ๋ฉฐ, 2024๋ ๊ธฐ์ค ์ต์ ๋ชจ๋ฐ์ผ SoC๋ ๋์ฒด๋ก ์์ญ TOPS๊ธ๊น์ง ํ์ฅ๋์๋ค. NPU์ ํต์ฌ ๋ชฉํ๋ ์๋์ง ํจ์จ(TOPS/W)์ ๊ทน๋ํํ๋ ๊ฒ์ด๋ฉฐ, ์ด๋ฅผ ์ํด ๊ณ ์ ๋ ๋ฐ์ดํฐ ํ์ (INT8, INT4)๊ณผ ๋ฉ๋ชจ๋ฆฌ ํจ์จ์ ์ธ ๊ฐ์ค์น ์์ถ ๊ธฐ๋ฒ์ ํ์ฉํ๋ค.
ํํธ NPU๋ผ๋ ์ด๋ฆ์ ๋ชจ๋ฐ์ผ SoC ๋ด๋ถ ์ถ๋ก ์์ง๋ถํฐ ๋ฐ์ดํฐ์ผํฐ์ฉ AI ๊ฐ์ ๋ธ๋ก๊น์ง ํญ๋๊ฒ ์ฌ์ฉ๋๋ค. ๋ฐ๋ผ์ ๊ฐ์ "NPU"๋ผ๋ ์ ๋ ฅ ์์ฐ, ๋ฉ๋ชจ๋ฆฌ ๊ตฌ์ฑ, ํ๋ก๊ทธ๋๋ฐ ๋ชจ๋ธ, ๋ชฉํ ์ํฌ๋ก๋๊ฐ ํฌ๊ฒ ๋ค๋ฅผ ์ ์์ผ๋ฉฐ, ๋ชจ๋ฐ์ผ NPU์ ์๋ฒํ AI ํ๋ก์ธ์๋ ์ ๋ ์ฑ๋ฅ๋ณด๋ค ์ค๊ณ ๋ชฉํ์ ์ ๋ ฅ ํจ์จ ๊ด์ ์์ ๋น๊ตํ๋ ํธ์ด ์ ํํ๋ค.
ํต์ฌ ๊ฐ๋
NPU ์ํคํ ์ฒ ๋ถ๋ฅ
NPU๋ ์ค๊ณ ์ฒ ํ์ ๋ฐ๋ผ ์ธ ๊ฐ์ง ์ฃผ์ ์นดํ ๊ณ ๋ฆฌ๋ก ๋ถ๋ฅ๋๋ค:
| ๋ถ๋ฅ | ์ค๋ช | ๋ํ ์ ํ | ํน์ง |
|---|---|---|---|
| ๊ณ ์ ๊ธฐ๋ฅํ | ํน์ ์ ๊ฒฝ๋ง ๊ตฌ์กฐ์ ์ต์ ํ | Apple Neural Engine (์ด๊ธฐ) | ๋์ ํจ์จ, ๋ฎ์ ์ ์ฐ์ฑ |
| ํ๋ก๊ทธ๋๋ฐ ๊ฐ๋ฅํ | ๋ค์ํ ๋ชจ๋ธ ๊ตฌ์กฐ ์ง์ | Qualcomm Hexagon HTA | ์ค๊ฐ ํจ์จ, ๋์ ์ ์ฐ์ฑ |
| ํ์ด๋ธ๋ฆฌ๋ํ | ๊ณ ์ MAC ๋ฐฐ์ด + ํ๋ก๊ทธ๋๋ฐ ๊ฐ๋ฅํ ํ์ฑํ | ์ต์ NPU ๋๋ถ๋ถ | ๊ท ํ ์กํ ํจ์จ๊ณผ ์ ์ฐ์ฑ |
MAC ๋ฐฐ์ด ์ํคํ ์ฒ
NPU์ ํต์ฌ ์ฐ์ฐ ์ ๋์ MAC(Multiply-Accumulate) ๋ฐฐ์ด์ด๋ค. GPU์ Tensor Core๊ฐ 16ร16 ๋ธ๋ก ๋จ์๋ก ํ๋ ฌ ๊ณฑ์ ์ ์ํํ๋ ๊ฒ๊ณผ ๋ฌ๋ฆฌ, NPU์ MAC ๋ฐฐ์ด์ ํฌ๊ธฐ์ ๊ตฌ์กฐ๊ฐ ์ ์กฐ์ฌ๋ง๋ค ๋ค๋ฅด๊ฒ ์ค๊ณ๋๋ค.
์ฃผ์ NPU MAC ๋ฐฐ์ด ๋น๊ต:
| ์ ์กฐ์ฌ | NPU | MAC ๋ฐฐ์ด ํฌ๊ธฐ | ์ ๋ฐ๋ | ํน์ง |
|---|---|---|---|---|
| Apple | Neural Engine (M4) | 16์ฝ์ด ๋ณ๋ ฌ | INT8/INT16 | 16๊ฐ ๋ ๋ฆฝ ์ฝ์ด |
| Qualcomm | Hexagon Gen 4 | 4K MAC | INT8/INT4 | HVX + HTA ํ์ด๋ธ๋ฆฌ๋ |
| Samsung | Exynos 2500 NPU | 32K MAC | INT8/INT16 | ํธ๋ฆฌํ NPU + DSP |
| MediaTek | Dimensity 9400 APU | 2K MAC | INT8/INT4/FP16 | ํ๋ก๊ทธ๋๋ฐ ๊ฐ๋ฅํ MAC |
| Huawei | Ascend Da Vinci | 4Kร4K Cube | INT8/FP16 | 3D Cube + Vector |
๋ฐ์ดํฐํ๋ก์ฐ ํจํด
NPU๋ ๋ฐ์ดํฐ๊ฐ MAC ๋ฐฐ์ด์ ํต๊ณผํ๋ ๋ฐฉ์์ ๋ฐ๋ผ ์ธ ๊ฐ์ง ์ฃผ์ ๋ฐ์ดํฐํ๋ก์ฐ ํจํด์ ์ฌ์ฉํ๋ค:
1. ๊ฐ์ค์น ๊ณ ์ (Weight Stationary)
- ๊ฐ์ค์น๊ฐ MAC ๋ฐฐ์ด์ ๊ณ ์ ๋๊ณ , ์
๋ ฅ ๋ฐ์ดํฐ๊ฐ ์์ฐจ์ ์ผ๋ก ํ๋ฆ
- ๊ฐ์ค์น ๋ก๋ ์ค๋ฒํค๋ ์ต์ํ
- Apple Neural Engine, Samsung Exynos NPU ์ฑํ
2. ์ถ๋ ฅ ๊ณ ์ (Output Stationary)
- ์ถ๋ ฅ์ด MAC ๋ฐฐ์ด์ ๊ณ ์ ๋๊ณ , ๊ฐ์ค์น์ ์
๋ ฅ์ด ์ํ
- ๋์ฐ ๋ฉ๋ชจ๋ฆฌ ์ ๊ทผ ์ต์ํ
- ์ผ๋ถ NPU์ ์ปจ๋ณผ๋ฃจ์
์ฐ์ฐ์ ์ฌ์ฉ
3. ํ ๊ณ ์ (Row Stationary)
- ์
๋ ฅ๊ณผ ๊ฐ์ค์น๊ฐ ๋์์ ๋ถ๋ถ์ ์ผ๋ก ๊ณ ์
- ๋ฉ๋ชจ๋ฆฌ ์ ๊ทผ ํจํด ์ต์ ํ
- ๊ณ ๊ธ NPU์์ ์ฑํ๋๋ ๋ฐ์ดํฐํ๋ก์ฐ
์์ํ ์ง์
NPU๋ ๋ฎ์ ์ ๋ ฅ์ผ๋ก ๋์ ์ฑ๋ฅ์ ๋ฌ์ฑํ๊ธฐ ์ํด ์์ํ(Quantization)๋ฅผ ํต์ฌ ๊ธฐ์ ๋ก ํ์ฉํ๋ค:
| ์ ๋ฐ๋ | ๋นํธ ์ | ํน์ง | ์ ์ฉ ์ฌ๋ก |
|---|---|---|---|
| FP32 | 32๋นํธ | ๋จ์ ๋ฐ๋ ๋ถ๋์์์ | GPU/TPU ํ๋ จ |
| FP16 | 16๋นํธ | ์ ๋ฐ ์ ๋ฐ๋ | GPU ์ถ๋ก , ์ผ๋ถ NPU |
| BF16 | 16๋นํธ | ๋ธ๋ ์ธ ๋ถ๋์์์ | TPU, ์ต์ GPU |
| INT8 | 8๋นํธ | ์ ์ ์์ํ | NPU ํ์ค |
| INT4 | 4๋นํธ | 4๋นํธ ์์ํ | ์ต์ NPU (ํจ์จ ๊ทน๋ํ) |
| Binary | 1๋นํธ | ์ด์ง ์ ๊ฒฝ๋ง | ์ฐ๊ตฌ ์์ค |
์์ํ ๊ธฐ๋ฒ:
- Post-Training Quantization (PTQ): ํ๋ จ ํ ๋ชจ๋ธ์ ์์ํ
- Quantization-Aware Training (QAT): ํ๋ จ ๊ณผ์ ์์ ์์ํ๋ฅผ ๊ณ ๋ ค
- Mixed-Precision Quantization: ๋ ์ด์ด๋ณ๋ก ๋ค๋ฅธ ์ ๋ฐ๋ ์ ์ฉ
๋ฉ๋ชจ๋ฆฌ ์ํคํ ์ฒ
NPU๋ ์ ํ๋ ์ฃ์ง ๊ธฐ๊ธฐ ๋ฉ๋ชจ๋ฆฌ ํ๊ฒฝ์์ ํจ์จ์ ์ผ๋ก ๋์ํ๊ธฐ ์ํด ํนํ๋ ๋ฉ๋ชจ๋ฆฌ ๊ณ์ธต์ ์ฌ์ฉํ๋ค:
๋ฉ๋ชจ๋ฆฌ ๊ณ์ธต:
| ๊ณ์ธต | ์ฉ๋ | ํน์ง |
|---|---|---|
| ๋ ์ง์คํฐ ํ์ผ | ์ KB | ๊ฐ์ฅ ๋น ๋ฆ, MAC ๋ฐฐ์ด ๋ด๋ถ |
| ์คํฌ๋์นํจ๋ ๋ฉ๋ชจ๋ฆฌ | ์ MB | ํ๋ก๊ทธ๋๋ฐ ๊ฐ๋ฅํ SRAM |
| ๊ธ๋ก๋ฒ ๋ฒํผ | ์์ญ MB | ๊ฐ์ค์น/ํ์ฑํ ์บ์ |
| ์์คํ ๋ฉ๋ชจ๋ฆฌ | ์ GB | LPDDR5/5X |
๊ฐ์ค์น ์์ถ ๊ธฐ๋ฒ:
- ๊ทธ๋ฃน ์์ํ: ๊ฐ์ค์น๋ฅผ ๊ทธ๋ฃน ๋จ์๋ก ์์ํํ์ฌ ์ ๋ฐ๋ ์ ์ง
- ํฌ์์ฑ ํ์ฉ: 0(Zero) ๊ฐ์ค์น๋ฅผ ์คํตํ์ฌ ์ฐ์ฐ ์ ์ฝ
- CSC(Compressed Sparse Column): ํฌ์ ํ๋ ฌ ์์ถ ํฌ๋งท
์ปดํ์ผ๋ฌ์ ๋ฐํ์
๋ชจ๋ฐ์ผ NPU๋ ํ๋์จ์ด๋ง์ผ๋ก ์๊ฒฐ๋์ง ์๊ณ , ๋ชจ๋ธ ๊ทธ๋ํ๋ฅผ ์ค์ MAC ๋ฐฐ์ด๊ณผ ๋ฉ๋ชจ๋ฆฌ ๊ณ์ธต์ ๋ง๊ฒ ์ฌ๋ฐฐ์นํ๋ ์ํํธ์จ์ด ์คํ์ด ํจ๊ป ํ์ํ๋ค.
| ๊ตฌ์ฑ ์์ | ์ญํ | ์ค์ ์ํฅ |
|---|---|---|
| ๋ชจ๋ธ ๋ณํ๊ธฐ | PyTorch, TensorFlow, ONNX ๋ชจ๋ธ์ NPU ์คํ ๊ทธ๋ํ๋ก ๋ณํ | ์ง์๋์ง ์๋ ์ฐ์ฐ์ ์ฌ์ ์ ์๋ณ |
| ์ปดํ์ผ๋ฌ | ์ฐ์ฐ์ ์ตํฉ, ํ์ผ๋ง, ๋ฉ๋ชจ๋ฆฌ ๋ฐฐ์น, DMA ์ค์ผ์ค๋ง ์ํ | DRAM ์๋ณต ๊ฐ์, ์ง์ฐ ์๊ฐ ๋จ์ถ |
| ๋ฐํ์ | CPU/GPU/NPU ๊ฐ ์์ ๋ถ๋ฐฐ์ ๋๊ธฐํ ์ํ | ์ผ๋ถ ๋ ์ด์ด fallback ์ ์ฑ๋ฅ ๋ณ๋ ๋ฐ์ |
| ํ๋กํ์ผ๋ฌ | ๋ณ๋ชฉ ์ฐ์ฐ, ๋์ญํญ ๋ถ์กฑ, ์์ํ ์ค์ฐจ ์ถ์ | ๋ชจ๋ธ ์ต์ ํ ๋ฐ๋ณต ์๋ ํฅ์ |
ํนํ ์ฐ์ฐ์(operator) ์ง์ ๋ฒ์์ fallback ์ ์ฑ ์ ์ฒด๊ฐ ์ฑ๋ฅ์ ํฌ๊ฒ ์ข์ฐํ๋ค. ์ปจ๋ณผ๋ฃจ์ ๊ณผ GEMM์ NPU์์ ๋น ๋ฅด๊ฒ ์คํ๋๋๋ผ๋, ํ ํฐ ํ์ฒ๋ฆฌ๋ ์ผ๋ถ ์ฌ์ฉ์ ์ ์ ์ฐ์ฐ์ด CPU/GPU๋ก ๋๋์๊ฐ๋ฉด ์ง์ฐ ์๊ฐ๊ณผ ์ ๋ ฅ ํจ์จ์ด ํจ๊ป ์ ํ๋ ์ ์๋ค.
๋น๊ต/๋ถ์
NPU ์ ์กฐ์ฌ๋ณ ๋น๊ต
์๋ ํ๋ ๋ชจ๋ฐ์ผ SoC ๋ด์ฅ NPU๋ฅผ ์ค์ฌ์ผ๋ก ์ ๋ฆฌํ๋, Huawei Ascend๋ ์๋ฒํ AI ํ๋ก์ธ์์ ๊ธฐ์ค์ ์ผ๋ก ํจ๊ป ๋ฐฐ์นํ๋ค. ๋ฐ๋ผ์ Ascend์ ์ ๋ ์ฑ๋ฅ๊ณผ ์ ๋ ฅ ์์น๋ ์ค๋งํธํฐ NPU์ ๋์ผ ์ ์ ๋น๊ต๋ณด๋ค๋ ์ค๊ณ ๋ชฉํ ์ฐจ์ด๋ฅผ ๋ณด์ฌ์ฃผ๋ ์ฐธ๊ณ ๊ฐ์ผ๋ก ๋ณด๋ ํธ์ด ์ ์ ํ๋ค.
| ํญ๋ชฉ | Apple Neural Engine | Qualcomm Hexagon | Samsung Exynos NPU | MediaTek APU | Huawei Ascend |
|---|---|---|---|---|---|
| ์ต์ ์ธ๋ | M4 (2024) | Snapdragon 8 Elite (2024) | Exynos 2500 (2025) | Dimensity 9400 (2024) | Ascend 910C (2024) |
| ์ฑ๋ฅ | 38 TOPS | 45 TOPS | 59 TOPS | 50 TOPS | 640 TOPS |
| ์ ๋ ฅ | ~5W | ~5W | ~5W | ~5W | ~310W |
| ๊ณต์ | 3nm | 3nm | 3nm GAA | 3nm | 7nm |
| ์ ๋ฐ๋ | INT8/INT16 | INT8/INT4 | INT8/INT16 | INT8/INT4/FP16 | INT8/FP16 |
| ๋ฉ๋ชจ๋ฆฌ | ํตํฉ ๋ฉ๋ชจ๋ฆฌ | LPDDR5X | LPDDR5X | LPDDR5X | HBM2e |
| ํ๋ก๊ทธ๋๋ฐ | Core ML | SNPE/QNN | ONE SDK | NeuroPilot | MindSpore/CANN |
NPU vs GPU vs TPU ์ข ํฉ ๋น๊ต
| ํญ๋ชฉ | NPU (๋ชจ๋ฐ์ผ) | GPU (H100) | TPU (v5p) |
|---|---|---|---|
| ์ค๊ณ ๋ชฉ์ | ์ฃ์ง ์ถ๋ก | ๋ฒ์ฉ ๋ณ๋ ฌ ์ฒ๋ฆฌ | ๋๊ท๋ชจ ํ๋ จ/์ถ๋ก |
| ์ฐ์ฐ ์ ๋ | MAC ๋ฐฐ์ด | CUDA Core + Tensor Core | systolic array (MXU) |
| INT8 ์ฑ๋ฅ | 45~70 TOPS | 3,958 TOPS | - |
| BF16 ์ฑ๋ฅ | - | 989 TFLOPS | 459 TFLOPS |
| ๋ฉ๋ชจ๋ฆฌ | 12GB LPDDR5X | 80GB HBM3 | 95GB HBM3 |
| ๋์ญํญ | 77 GB/s | 3.35 TB/s | 2.76 TB/s |
| ์ ๋ ฅ ์๋น | ~5W | ~700W | ~450W |
| ํจ์จ (TOPS/W) | 7~9 | 5.7 | 1.0 |
| ํ๋ก๊ทธ๋๋ฐ | TFLite/Core ML | CUDA/cuDNN | JAX/TensorFlow XLA |
| ํ์ฅ์ฑ | ๋จ์ผ ์นฉ | NVLink multi-GPU | ICI multi-TPU Pod |
| ๊ฐ๊ฒฉ๋ | $100~$300 (SoC) | ~$30,000 | ์๊ฐ์ ๊ณผ๊ธ |
| ์ ํฉ ์ํฌ๋ก๋ | ์ฃ์ง ์ถ๋ก | ํ๋ จ/์ถ๋ก /HPC | ๋๊ท๋ชจ ํ๋ จ/์ถ๋ก |
์๋์ง ํจ์จ ๋น๊ต (TOPS/W)
| ๊ฐ์๊ธฐ | ์ฑ๋ฅ (TOPS) | ์ ๋ ฅ (W) | ํจ์จ (TOPS/W) |
|---|---|---|---|
| MediaTek APU (Dimensity 9400) | 50 | 5 | 10.0 |
| Qualcomm Hexagon NPU | 45 | 5 | 9.0 |
| Samsung Exynos NPU | 59 | 7 | 8.4 |
| Apple Neural Engine (M4) | 38 | 5 | 7.6 |
| NVIDIA H100 (INT8) | 3,958 | 700 | 5.7 |
| Google TPU v5p (BF16) | 459 | 450 | 1.0 |
์ฃผ์ NPU ์ธ๋๋ณ ๋ฐ์
Apple Neural Engine ๋ฐ์ :
| ์ธ๋ | ์ถ์ | ์ฑ๋ฅ | ์ฝ์ด ์ | ํน์ง |
|---|---|---|---|---|
| A11 Bionic | 2017 | 0.6 TOPS | 2์ฝ์ด | ์ต์ด ๋์ |
| A12 Bionic | 2018 | 5 TOPS | 8์ฝ์ด | 8๋ฐฐ ์ฑ๋ฅ ํฅ์ |
| A14 Bionic | 2020 | 11 TOPS | 16์ฝ์ด | 16์ฝ์ด ํ์ฅ |
| A17 Pro | 2023 | 35 TOPS | 16์ฝ์ด | 3๋ฐฐ ์ฑ๋ฅ ํฅ์ |
| M4 | 2024 | 38 TOPS | 16์ฝ์ด | Mac ํตํฉ |
Qualcomm Hexagon ๋ฐ์ :
| ์ธ๋ | ์ถ์ | ์ฑ๋ฅ | ํน์ง |
|---|---|---|---|
| Hexagon 685 | 2017 | 3 TOPS | HVX ๋ฒกํฐ ํ์ฅ |
| Hexagon 740 | 2020 | 15 TOPS | HTA ํ ์ ๊ฐ์๊ธฐ |
| Hexagon 750 | 2022 | 26 TOPS | FP16 ์ง์ |
| Hexagon Gen 3 | 2023 | 45 TOPS | INT4 ์์ํ |
| Hexagon Gen 4 | 2024 | 75 TOPS | ๋์ค์ปค๋ฒ๋ฆฌ ์์ง |
Samsung Exynos NPU ๋ฐ์ :
| ์ธ๋ | ์ถ์ | ์ฑ๋ฅ | ํน์ง |
|---|---|---|---|
| Exynos 990 | 2020 | 15 TOPS | ๋์ผ NPU |
| Exynos 2100 | 2021 | 26 TOPS | ํธ๋ฆฌํ NPU |
| Exynos 2400 | 2024 | 34 TOPS | ๊ฐ์ ๋ NPU |
| Exynos 2500 | 2025 | 59 TOPS | 3nm GAA ๊ณต์ |
๋์ ์๋ฆฌ
NPU ์นฉ ๋ด๋ถ ๊ตฌ์กฐ
NPU ์นฉ์ ํฌ๊ฒ ์ธ ๊ฐ์ง ํต์ฌ ์ ๋์ผ๋ก ๊ตฌ์ฑ๋๋ค:
1. MAC ๋ฐฐ์ด (Multiply-Accumulate Array)
- ํ๋ ฌ ๊ณฑ์
-๋์ ์ฐ์ฐ์ ์ํํ๋ ํต์ฌ ์ฐ์ฐ ์ ๋
- ๊ฐ์ค์น์ ์
๋ ฅ ๋ฐ์ดํฐ๊ฐ ๊ณฑ์
ํ ๋์ฐ๋จ
- INT8/INT4 ์ ๋ฐ๋๋ก ์ ์ ๋ ฅ ๊ณ ์ฑ๋ฅ ๋ฌ์ฑ
2. ๋ฒกํฐ ์ ๋ (Vector Unit)
- ํ์ฑํ ํจ์(ReLU, Sigmoid, Softmax ๋ฑ) ์ํ
- ํ๋ง(Pooling), ๋ฐฐ์น ์ ๊ทํ(Batch Normalization) ์ฐ์ฐ
- ํ๋ก๊ทธ๋๋ฐ ๊ฐ๋ฅํ ์ฐ์ฐ ์ง์
3. ์ ์ด ์ ๋ (Control Unit)
- ๋ชจ๋ธ ์คํ ์์ ์ ์ด
- ๋ฉ๋ชจ๋ฆฌ ์ ๊ทผ ํจํด ๊ด๋ฆฌ
- DMA ์์ง๊ณผ์ ์ธํฐํ์ด์ค
์ถ๋ก ์คํ ํ๋ฆ
NPU์์ ์ถ๋ก ์ด ์คํ๋๋ ์ ์ฒด ํ๋ฆ์ ๋ค์๊ณผ ๊ฐ๋ค:
1๋จ๊ณ: ๋ชจ๋ธ ๋ก๋
- ์ฌ์ ํ๋ จ๋ ๋ชจ๋ธ์ ๊ฐ์ค์น๋ฅผ NPU ๋ฉ๋ชจ๋ฆฌ์ ๋ก๋
- ๊ฐ์ค์น๋ ์ผ๋ฐ์ ์ผ๋ก INT8/INT4๋ก ์์ํ๋์ด ์ ์ฅ
- ๋ชจ๋ธ ๊ตฌ์กฐ๋ ํ๋์จ์ด์ ๋งคํ๋จ
2๋จ๊ณ: ์
๋ ฅ ๋ฐ์ดํฐ ์ ๋ฌ
- CPU๊ฐ ์
๋ ฅ ๋ฐ์ดํฐ(์ด๋ฏธ์ง, ํ
์คํธ ๋ฑ)๋ฅผ NPU ๋ฉ๋ชจ๋ฆฌ์ ์ ๋ฌ
- ์
๋ ฅ ๋ฐ์ดํฐ๋ ์ ์ ํ ์ ๋ฐ๋๋ก ๋ณํ๋จ
3๋จ๊ณ: ๋ ์ด์ด๋ณ ์ฐ์ฐ ์คํ
- ์ปจ๋ณผ๋ฃจ์
๋ ์ด์ด: MAC ๋ฐฐ์ด์์ ํํฐ์ ์
๋ ฅ์ ๊ณฑ์
-๋์
- ํ์ฑํ ๋ ์ด์ด: ๋ฒกํฐ ์ ๋์์ ๋น์ ํ ํจ์ ์ ์ฉ
- ํ๋ง ๋ ์ด์ด: ๋ฒกํฐ ์ ๋์์ ๊ณต๊ฐ ์ฐจ์ ์ถ์
- ์์ ์ฐ๊ฒฐ ๋ ์ด์ด: MAC ๋ฐฐ์ด์์ ํ๋ ฌ ๊ณฑ์
4๋จ๊ณ: ๊ฒฐ๊ณผ ์ถ๋ ฅ
- ์ต์ข
์์ธก ๊ฒฐ๊ณผ๋ฅผ CPU์ ๋ฐํ
- ์ํํธ๋งฅ์ค ๋ฑ ํ์ฒ๋ฆฌ ์ํ
๊ฐ์ค์น ์คํธ๋ฆฌ๋ฐ
NPU๋ ๋ฉ๋ชจ๋ฆฌ ๋์ญํญ ๋ณ๋ชฉ์ ํด๊ฒฐํ๊ธฐ ์ํด ๊ฐ์ค์น ์คํธ๋ฆฌ๋ฐ(Weight Streaming) ๊ธฐ๋ฒ์ ์ฌ์ฉํ๋ค:
- ๊ฐ์ค์น๊ฐ ์์คํ ๋ฉ๋ชจ๋ฆฌ์์ NPU ๊ธ๋ก๋ฒ ๋ฒํผ๋ก ์คํธ๋ฆฌ๋ฐ
- ๊ธ๋ก๋ฒ ๋ฒํผ์์ ์คํฌ๋์นํจ๋ ๋ฉ๋ชจ๋ฆฌ๋ก ๋ธ๋ก ๋จ์๋ก ๋ก๋
- ์คํฌ๋์นํจ๋์์ MAC ๋ฐฐ์ด๋ก ์ ๋ฌ
- MAC ๋ฐฐ์ด์์ ์ฐ์ฐ ์ํ
- ๊ฒฐ๊ณผ๊ฐ ์ถ๋ ฅ ๋ฒํผ์ ์ ์ฅ
์ด ๊ณผ์ ์์ ๋๋ธ ๋ฒํผ๋ง(Double Buffering)์ ์ ์ฉํ์ฌ ๋ฉ๋ชจ๋ฆฌ ๋ก๋์ ์ฐ์ฐ์ ๊ฒน์ณ ์คํํจ์ผ๋ก์จ ์ฒ๋ฆฌ๋์ ๊ทน๋ํํ๋ค.
๋ชจ๋ธ ์ต์ ํ ๊ธฐ๋ฒ
NPU๋ ๋์ ์ฑ๋ฅ๊ณผ ๋ฎ์ ์ ๋ ฅ์ ๋ฌ์ฑํ๊ธฐ ์ํด ๋ค์ํ ๋ชจ๋ธ ์ต์ ํ ๊ธฐ๋ฒ์ ํ์ฉํ๋ค:
| ๊ธฐ๋ฒ | ์ค๋ช | ํจ๊ณผ |
|---|---|---|
| ์์ํ | FP32๋ฅผ INT8/INT4๋ก ๋ณํ | ๋ฉ๋ชจ๋ฆฌ 2~4๋ฐฐ ์ ์ฝ, ์๋ ํฅ์ |
| ํ๋ฃจ๋ | ๋ถํ์ํ ๊ฐ์ค์น ์ ๊ฑฐ | ์ฐ์ฐ๋ ๊ฐ์, ๋ชจ๋ธ ํฌ๊ธฐ ์ถ์ |
| ๊ฐ์ค์น ๊ณต์ | ๋์ผ ๊ฐ์ค์น๋ฅผ ์ฌ๋ฌ ํํฐ์์ ์ฌ์ฌ์ฉ | ๋ฉ๋ชจ๋ฆฌ ์ฌ์ฉ๋ ๊ฐ์ |
| ๋ ์ด์ด ์ตํฉ | ์ธ์ ๋ ์ด์ด๋ฅผ ํ๋๋ก ํตํฉ | ๋ฉ๋ชจ๋ฆฌ ์๋ณต ์ต์ํ |
| ๋ชจ๋ธ ์์ถ | ๊ฐ์ค์น ์ธ์ฝ๋ฉ ๋ฐ ์์ถ | ๋์ญํญ ์ ์ฝ |
์ฅ๋จ์
์ฅ์
| ์ฅ์ | ์ค๋ช |
|---|---|
| ์ด์ ์ ๋ ฅ | 1W ๋ฏธ๋ง์์ ์์ญ TOPS ๋ฌ์ฑ, ์ฃ์ง ๊ธฐ๊ธฐ์ ์ ํฉ |
| ๋์ ์๋์ง ํจ์จ | TOPS/W ๊ธฐ์ค GPU/TPU ๋๋น 2~10๋ฐฐ ์ฐ์ |
| ๋น ๋ฅธ ์ถ๋ก ์ง์ฐ ์๊ฐ | ํ๋์จ์ด ์์ค์์ ์๋ฐฉํฅ ์ ํ ์ต์ ํ |
| ์ฆ์ ํตํฉ | SoC ๋ด CPU/GPU์ ํจ๊ป ๋์, ๋ณ๋ ํ๋์จ์ด ๋ถํ์ |
| ์จ-device ๊ฐ์ธ์ ๋ณด ๋ณดํธ | ๋ฐ์ดํฐ๊ฐ ๊ธฐ๊ธฐ ๋ฐ์ผ๋ก ๋๊ฐ์ง ์์ |
| ๋ชจ๋ธ ์ต์ ํ | ์์ํ, ํ๋ฃจ๋ ๋ฑ ํ๋์จ์ด ์นํ์ ์ต์ ํ ์ง์ |
๋จ์
| ๋จ์ | ์ค๋ช |
|---|---|
| ์ถ๋ก ์ ์ฉ | ํ๋ จ(Training) ๋ถ๊ฐ, ์ฌ์ ํ๋ จ๋ ๋ชจ๋ธ๋ก ์ ํ |
| ํ๋ก๊ทธ๋๋ฐ ์ ์ฐ์ฑ ๋ถ์กฑ | ๊ณ ์ ๋ ์ ๊ฒฝ๋ง ๊ตฌ์กฐ์ ์ต์ ํ |
| ๋ชจ๋ธ ๊ตฌ์กฐ ์ ํ | ์ปจ๋ณผ๋ฃจ์ , Fully Connected ๋ฑ ์ง์ ๋ ์ด์ด ์ ํ |
| ์ ์กฐ์ฌ๋ณ SDK ๋นํธํ | Apple/Qualcomm/Samsung ๊ฐ ํธํ์ฑ ์์ |
| ํ๋์จ์ด ์์กด์ | ๋ชจ๋ธ ๋ณ๊ฒฝ ์ ํ๋์จ์ด ์ฌ์ค๊ณ ํ์ |
| ์ด๊ธฐ ๊ฐ๋ฐ ๋น์ฉ | NPU์ฉ ๋ชจ๋ธ ์ต์ ํ์ ์ถ๊ฐ ๊ฐ๋ฐ effort ํ์ |
| ์ฐ์ฐ์ fallback ๋น์ฉ | ๋ฏธ์ง์ ์ฐ์ฐ์ด CPU/GPU๋ก ์ด๋ํ๋ฉด ์ง์ฐ ์๊ฐ๊ณผ ์ ๋ ฅ ํจ์จ ๊ธ๋ฝ |
| ์จ์นฉ ๋ฉ๋ชจ๋ฆฌ ์ ์ฝ | ํฐ ๋ชจ๋ธ์ ํ์ผ๋ง๊ณผ ์คํธ๋ฆฌ๋ฐ ์ต์ ํ ์์ด๋ ํจ์จ์ด ๊ธ๊ฒฉํ ์ ํ |
๊ด๋ จ ๊ธฐ์
ํ๋์จ์ด ๊ด๋ จ
- Tensor Core Architecture: NVIDIA ํ ์ ์ฝ์ด ์ํคํ ์ฒ ์์ธ ๋ถ์
- AI ๊ฐ์๊ธฐ ๊ฐ์: GPU/TPU/NPU ๋ถ๋ฅ ์ฒด๊ณ ๋ฐ ๋น๊ต
- ํผํฉ ์ ๋ฐ๋ ํ๋์จ์ด: FP8, BF16, FP4 ํผํฉ ์ ๋ฐ๋ ๊ธฐ์
- TPU ์์ธ: Google TPU ์ํคํ ์ฒ ๋ฐ systolic array
์ํํธ์จ์ด ๊ด๋ จ
- Apple Core ML: Apple NPU ํตํฉ ํ๋ ์์ํฌ, ๋ชจ๋ธ ๋ณํ ์๋ํ
- Qualcomm SNPE/QNN SDK: Qualcomm NPU ๊ฐ๋ฐ ๋๊ตฌ, ํ์ปด AI ์์ง
- Samsung ONE SDK: Samsung Exynos NPU ๊ฐ๋ฐ ๋๊ตฌ
- MediaTek NeuroPilot: MediaTek APU ๊ฐ๋ฐ ๋๊ตฌ, ๋ฉํฐ ํ๋ ์์ํฌ ์ง์
- Google TFLite: ์ฃ์ง ์ถ๋ก ์ ์ํ TensorFlow ๊ฒฝ๋ ๋ฒ์
- ONNX Runtime: ํฌ๋ก์ค ํ๋ซํผ ์ถ๋ก ์์ง
์ฐธ๊ณ ๋ฌธํ
- Apple, "Apple Neural Engine Technical Brief," 2023
- Qualcomm, "Snapdragon 8 Elite Mobile Platform Whitepaper," 2024
- Samsung, "Exynos 2500 Processor Technical Brief," 2025
- MediaTek, "Dimensity 9400 Whitepaper," 2024
- Huawei, "Ascend 910C Architecture Whitepaper," 2024
- IEEE, "A Survey of Neural Network Accelerators," 2024
- NVIDIA, "Jetson Orin NX Technical Reference Manual," 2023
- Apple, "Apple introduces M4 chip," 2024
- Samsung Semiconductor, "Exynos 2500," 2025
- MediaTek, "MediaTek Dimensity 9400," 2024
ํต์ฌ ์ ๋ฆฌ
- NPU๋ ๋ชจ๋ฐ์ผ/์ฃ์ง ๊ธฐ๊ธฐ์์ ์ถ๋ก ์ ๊ฐ์ํํ๋ ์ ์ฉ ํ๋ก์ธ์๋ก, 1W ๋ฏธ๋ง์ ์ด์ ์ ๋ ฅ์ผ๋ก ์์ญ TOPS์ ์ฑ๋ฅ์ ๋ฌ์ฑํ๋ค.
- MAC ๋ฐฐ์ด ์ํคํ ์ฒ์ INT8/INT4 ์์ํ๋ฅผ ํตํด ์๋์ง ํจ์จ(TOPS/W)์ ๊ทน๋ํํ๋ฉฐ, GPU ๋๋น 2~10๋ฐฐ ๋์ ํจ์จ์ ์ ๊ณตํ๋ค.
- Apple Neural Engine, Qualcomm Hexagon, Samsung Exynos NPU, MediaTek APU ๋ฑ ์ฃผ์ ์ ์กฐ์ฌ๋ค์ด ๊ฒฝ์ํ๊ณ ์์ผ๋ฉฐ, 2024๋ ๊ธฐ์ค ์ต๋ 70 TOPS๊น์ง ์ฑ๋ฅ์ด ํ์ฅ๋์๋ค.
- NPU๋ ์ถ๋ก ์ ์ฉ์ด๋ผ๋ ์ ํ์ด ์์ง๋ง, ์์ํ, ํ๋ฃจ๋, ๊ฐ์ค์น ์คํธ๋ฆฌ๋ฐ ๋ฑ์ ์ต์ ํ ๊ธฐ๋ฒ์ ํตํด ์ฃ์ง ๊ธฐ๊ธฐ์์ ์ค์๊ฐ AI ์ถ๋ก ์ ๊ฐ๋ฅํ๊ฒ ํ๋ค.
- ์ ์กฐ์ฌ๋ณ SDK ๋นํธํ๊ณผ ํ๋ก๊ทธ๋๋ฐ ์ ์ฐ์ฑ ๋ถ์กฑ์ด ๊ณผ์ ์ด๋, ์จ-device ๊ฐ์ธ์ ๋ณด ๋ณดํธ์ ์ฆ์ ์ฌ์ฉ ๊ฐ๋ฅํ AI ๊ธฐ๋ฅ์ผ๋ก ์ฃ์ง AI ์์ฅ์ ์ฃผ๋ํ๊ณ ์๋ค.