연산장치 스터디 가이드

ALU에서 시작해 CPU·GPU·NPU·TPU·ASIC·FPGA까지 · 강점·약점·가격·메모리 관계

1. 연산장치 개요

1.1 연산장치란 무엇인가

연산장치 (Processor)
디지털 신호 0과 1을 이용해 덧셈·뺄셈·비교·논리 연산을 수행하는 하드웨어. 본질은 모두 같지만, "무엇을 잘하도록 설계됐는가"에 따라 CPU, GPU, NPU, TPU, ASIC, FPGA 등으로 갈라집니다.

이 글의 큰 그림: 가장 단순한 가산기(adder)부터 시작해 ALU → CPU → 점점 더 특화된 가속기(GPU·NPU·TPU)까지 한 줄로 정리합니다. 그 다음에 이 장치들이 메모리·저장장치와 어떻게 협력하는지도 보겠습니다.

1.2 범용 ↔ 전용 스펙트럼

연산장치를 이해하는 가장 좋은 축은 "얼마나 범용적인가 vs 얼마나 한 가지 일에만 특화됐는가"입니다. 같은 면적·전력을 써도 특화될수록 해당 작업의 속도와 전성비가 올라가지만, 그 작업 밖으로 나가면 쓸 수가 없습니다(유연성↓). 그리고 한 가지에 맞춰 회로를 직접 깎을수록 개발은 어렵고 비싸집니다.

3가지 지표가 의미하는 것
  • 속도 (Performance): "그 장치가 잘하는 한 가지 작업"을 시켰을 때 얼마나 빠른가. 예: GPU에게 행렬 곱셈, TPU에게 신경망 추론. 같은 행렬 곱셈이라도 CPU보다 TPU가 수십~수백 배 빠름
  • 유연성 (Flexibility): 얼마나 다양한 일을 할 수 있는가. CPU는 웹·게임·OS 등 뭐든 가능. TPU는 행렬 곱셈만 빠르고 그 외엔 사실상 못 함
  • 개발 난이도 (Dev Cost): 그 장치를 만들고 + 그 위에 프로그램을 올리는 게 얼마나 어려운가. CPU는 표준 C/Python으로 누구나 가능, ASIC은 회로 설계부터 시작해야 함
⟵ 범용 (뭐든 다 함) · 스펙트럼 · 한 가지만 (전용) ⟶ CPU GPU FPGA NPU TPU/ASIC 속도 (잘하는 작업) 유연성 (가능 작업) 개발 난이도 5칸 채워질수록: 속도 ↑ · 유연성 ↑ · 개발 어려움 ↑ CPU 속도 ★★ — 한 작업의 챔피언은 아님 · 유연성 ★★★★★ — 모든 작업 가능 · 개발 ★ — C/Python 누구나 GPU 속도 ★★★ — 병렬 작업에서 CPU 대비 압도 · 유연성 ★★★★ — 다양한 병렬 작업 · 개발 ★★ — CUDA 학습 필요 FPGA 속도 ★★★ — 회로를 직접 짜서 빠름 · 유연성 ★★★ — 재합성 가능 · 개발 ★★★★ — HDL 회로 설계 NPU 속도 ★★★★ — AI 추론에 한해 빠름 · 유연성 ★★ — AI 외엔 못 함 · 개발 ★★★ — 칩 제조사 SDK TPU/ASIC 속도 ★★★★★ — 한 가지에선 무적 · 유연성 ★ — 그 한 가지만 · 개발 ★★★★★ — 회로 설계부터 검증까지 수년
결론
속도와 유연성은 거의 항상 반비례, 개발 난이도는 특화될수록 급증합니다.

2. 가장 작은 단위 — ALU와 가산기

모든 연산장치의 뿌리는 결국 "덧셈하는 회로"입니다. 곱셈은 덧셈의 반복, 뺄셈은 2의 보수 덧셈, 비교는 뺄셈 후 부호 확인. 결국 가산기(adder)만 잘 만들면 거의 모든 연산이 따라옵니다.

2.1 트랜지스터에서 논리 게이트, 그리고 프로세서까지

트랜지스터 한 개는 단순히 "전류를 흐르게 할지 말지" 결정하는 스위치입니다. 이 작은 부품을 점점 큰 단위로 쌓아 올리면 프로세서가 됩니다.

트랜지스터 → 프로세서 — 6단계 추상화 계층 트랜지스터 (Transistor) 스위치 1개 — "전류 ON/OFF" 크기: 약 3~5 nm (현재 최첨단 공정) 트랜지스터 6~10개 묶음 🔲 논리 게이트 (Logic Gate) AND · OR · NOT · NAND · NOR · XOR "두 입력의 1·0 조합으로 출력 결정" 게이트 수십~수백 개 기능 유닛 (Functional Unit) 가산기(Adder) · 곱셈기 · 시프터 · 비교기 "한 가지 산술 연산을 수행하는 회로" 기능 유닛 여러 개 + MUX 🧮 ALU (Arithmetic Logic Unit) "덧셈해라" / "AND 해라" 신호 받고 결과 출력 "여러 산술/논리 연산을 한 박스에 통합" ALU + 제어부 + 레지스터 🧠 코어 (Core) 명령을 읽고·해석하고·실행하는 단위 "독립적으로 프로그램 1개 돌릴 수 있는 최소 단위" 코어 여러 개 + 캐시 + 인터커넥트 💻 프로세서 (CPU · GPU · NPU · TPU · MCU …) 코어 묶음 + L1/L2/L3 캐시 + 외부 메모리 컨트롤러 현대 CPU 한 개에 트랜지스터가 수십~수백억 개
크기 감각
  • 1 트랜지스터 ≈ 3~5 nm (사람 머리카락의 약 1만분의 1)
  • 1 논리 게이트 = 트랜지스터 6~10개
  • 1 가산기 (1비트) ≈ 20~30개 트랜지스터
  • 1 ALU (64비트) ≈ 수만~수십만 트랜지스터
  • 현대 CPU 1개 (Apple M3) ≈ 250억 트랜지스터, GPU(NVIDIA H100) ≈ 800억 트랜지스터

2.2 가산기 (Adder) — 모든 산술의 출발점

Full Adder (전가산기)
세 비트(A, B, 이전 자리올림 Cin)를 입력받아 합(Sum)과 자리올림(Cout)을 출력하는 회로. 이걸 비트 수만큼 일렬로 잇거나(Ripple-Carry) 병렬화(Carry-Lookahead)하면 N비트 덧셈기가 됩니다.
Full Adder의 입출력 — 1비트 덧셈 회로 Full Adder A XOR B XOR Cin = Sum (A·B) + (Cin·(A⊕B)) = Cout 트랜지스터 약 20~30개 A (1 bit) B (1 bit) Cin (자리올림) Sum (합) Cout (올림) 예: A=1, B=1, Cin=0 → Sum=0, Cout=1 (1+1=10 in binary) 이 회로를 64개 일렬로 이으면 64비트 덧셈, 64-bit ALU의 핵심 부품

2.3 ALU — 산술·논리 회로의 묶음

ALU (Arithmetic Logic Unit, 산술 논리 연산 장치)
가산기·시프터·논리 게이트를 한 박스에 통합한 연산 단위. ALU 자체가 가산기들만으로 만들어진 건 아닙니다 — 가산기, 시프터, AND/OR/XOR 게이트, 비교기 등 여러 기능 유닛이 나란히 들어있고, OpCode(연산 지시 신호)에 따라 그중 하나의 결과를 뽑아내는 구조입니다.
자주 하는 오해 — "ALU는 가산기만으로 만들어진다?"

정확히는 아닙니다. 다만 덧셈만 잘 만들면 산술 연산 대부분이 따라온다는 게 핵심입니다.

  • 뺄셈: A - B = A + (-B). 음수는 2의 보수로 표현하므로 결국 덧셈 한 번
  • 곱셈: A × B = "A를 B번 더하기" = 시프트 + 덧셈 반복 (Booth 알고리즘 등)
  • 나눗셈: "B를 몇 번 빼야 0이 되나" = 뺄셈(= 덧셈) 반복
  • 비교 (A > B?): A - B 한 후 부호 비트 확인

반면 AND·OR·NOT·XOR 같은 비트 논리 연산은 덧셈이 아니라 별도의 논리 게이트로 구현됩니다. 시프트(비트 이동)도 가산기가 아니라 전용 시프터 회로를 씁니다. 그래서 ALU는 "가산기 + 논리 게이트 + 시프터"가 같이 들어있는 박스입니다.

ALU 내부 흐름 — 입력은 모든 유닛에 동시 전달, OpCode가 결과 1개 선택 ALU A (64bit) B (64bit) 가산기 (Adder) A + B / A − B 곱셈기 (Mult) A × B 시프터 (Shifter) A << n / A >> n 논리 게이트 AND · OR · XOR · NOT 비교기 (Comparator) A > B? MUX 결과 선택 OpCode Result (64bit) Flags A 버스 B 버스 A·B는 모든 유닛에 동시 전달, 유닛들이 한꺼번에 계산 → MUX가 OpCode 보고 1개만 통과
한 사이클 안에서 일어나는 일

CPU가 ADD R1, R2(R1 = R1 + R2) 명령을 실행할 때:

  1. 레지스터 R1, R2의 값이 ALU의 A, B 입력에 들어옴
  2. OpCode = "ADD" 신호가 MUX에 들어옴
  3. 가산기·곱셈기·시프터·논리·비교기 모두 동시에 계산 시작
  4. MUX는 OpCode를 보고 가산기 결과만 출력으로 통과시킴 (나머지는 버려짐)
  5. 결과가 R1로 돌아감

"왜 안 쓸 결과까지 다 계산하나?" → 회로에선 가만히 있는 것도 전기가 흐름. 일부만 켜는 것보다 전부 켜고 결과만 골라쓰는 게 더 단순하고 빠릅니다. 현대 CPU는 일부 유닛을 끄는 클럭 게이팅도 함.

왜 ALU만 이해해도 큰 그림이 보이나
  • CPU: 강력한 ALU 몇 개 + 복잡한 제어 로직
  • GPU: 단순한 ALU 수천 개를 병렬 배치
  • NPU/TPU: 행렬 곱셈 전용 ALU 묶음(systolic array)
  • ASIC: 특정 알고리즘에 필요한 ALU만 골라 배치
  • FPGA: ALU 조각들을 나중에 연결할 수 있는 "레고 블록"

3. CPU (Central Processing Unit) — 만능 일꾼

3.1 정의와 구조

CPU (Central Processing Unit)
컴퓨터의 "중앙 처리 장치". 운영체제·앱·게임 등 모든 종류의 명령을 처리하는 범용 프로세서입니다. 강력한 ALU 몇 개에 복잡한 제어 회로(분기 예측, 명령 파이프라인, 비순차 실행)가 결합되어 있어 "뭐든지 잘하지만, 모든 분야에서 최고는 아닌" 만능 일꾼입니다.
현대 CPU 1코어 내부 구조 (단순화) CPU Core (1개) Fetch 명령 가져오기 Decode 명령 해석 Execute ALU FPU SIMD Branch 실행 유닛들 Writeback 결과 저장 Registers 8~32개 x64bit RAX, RBX, RSP, RIP … 초고속 L1 Cache (32~64KB) 코어 전용 · SRAM · 1~2ns L2 Cache (256KB~1MB) 코어 전용 · SRAM · 3~10ns L3 Cache (4~64MB, 코어 공유) · SRAM · 10~30ns

CPU와 외부 메모리·저장장치의 연결

CPU 칩 안에는 캐시(SRAM)까지만 들어있고, 그보다 큰 데이터는 칩 밖의 DRAM과 저장장치에 둡니다. CPU는 메모리 컨트롤러와 PCIe·SATA 같은 인터페이스를 통해 이 외부 장치들과 대화합니다.

CPU ↔ DRAM ↔ SSD/HDD — 메모리·PCIe 컨트롤러 각각이 우측 장치로 직결 메인보드 (PCB) CPU 칩 패키지 Core 1 Core 2 Core 3 L3 캐시 (코어들 공유, SRAM) 메모리 컨트롤러 (IMC) DRAM과 직접 대화 PCIe 컨트롤러 SSD·GPU 등 외부 장치 SATA 컨트롤러 (옛 방식) HDD·옛 SSD ↑ CPU 칩 안 DRAM (메인 메모리) DDR5/LPDDR5 · 16~128GB · ~70ns 휘발성 (전원 꺼지면 사라짐) SSD (NAND Flash) NVMe · 256GB~4TB · ~50μs 비휘발성 (영구 저장) HDD (자기 디스크) 자기 회전판 · 1~24TB · ~10ms 비휘발성 · 대용량 백업용 DDR5 버스 40~80 GB/s PCIe / NVMe 8~15 GB/s SATA 0.5 GB/s 왼쪽이 빠르고·작고·비쌈 ← → 오른쪽이 느리고·크고·쌈
한 줄 정리 — CPU 칩 안과 밖
  • 칩 안: 레지스터 + L1/L2/L3 캐시 (모두 SRAM, 매우 빠르고 매우 작음)
  • 칩 밖 (메모리 컨트롤러 통해): DRAM 모듈 (DDR5) — 메인 메모리, 휘발성
  • 더 밖 (PCIe·SATA 통해): SSD/HDD — 영구 저장, 비휘발성
  • "앱 실행" = SSD의 파일 → DRAM으로 복사 → 캐시로 끌어올림 → 레지스터로 들어가 ALU가 처리

3.2 캐시 계층 — CPU의 비밀 무기

CPU는 RAM에서 데이터를 가져오는 시간(~100ns)이 자기 클럭(~0.3ns)보다 300배 이상 느려서, RAM을 매번 갈 수 없습니다. 그래서 SRAM 기반 캐시를 코어 가까이 두고 자주 쓰는 데이터를 보관합니다.

레벨위치크기속도공유 여부
RegisterALU 옆몇 KB0 cycle코어 전용
L1 Cache코어 내부32~64KB3~4 cycle (~1ns)코어 전용 (I/D 분리)
L2 Cache코어 내부256KB~1MB~12 cycle (~4ns)코어 전용 (보통)
L3 Cache다이 안 공유4~64MB~40 cycle (~15ns)모든 코어 공유
RAM (DDR5)외부 모듈16~128GB~200 cycle (~70ns)전체 공유

3.3 강점·약점·가격

구분내용
잘하는 것 ✓분기 많은 순차 작업, 운영체제·웹 브라우저·게임 로직, 한 번에 다양한 일 처리(멀티태스킹)
못하는 것 ✗수천~수만 개의 동일한 계산 병렬 처리 (예: 신경망 행렬 곱셈, 4K 영상 픽셀 처리)
전형적 코어 수4~16개 (모바일/노트북), 16~128개 (서버 Xeon, EPYC)
대표 메모리L1/L2/L3 SRAM 캐시 + 외부 DDR5/LPDDR5 RAM
가격$20 (저가) · $300 (데스크탑) · $5,000~$10,000 (Xeon 최상위)
대표 제품Intel Core i / Xeon, AMD Ryzen / EPYC, Apple M 시리즈, Qualcomm Snapdragon (모바일)

3.4 RISC vs CISC — CPU 명령어 집합의 두 철학

CPU가 "한 명령으로 무슨 일을 할 수 있나"를 정해놓은 규칙을 ISA (Instruction Set Architecture, 명령어 집합 구조)라고 합니다. ISA는 크게 두 철학으로 나뉘는데, CISC는 "한 명령에 많은 일", RISC는 "한 명령에 단순한 일만"이라는 정반대 접근입니다.

CISC (Complex Instruction Set Computer)
"명령어를 많이·풍부하게 만들자"는 철학. 한 명령으로 메모리 읽기·연산·쓰기까지 다 할 수 있음. 명령어 길이가 가변(1~15 byte)이고 한 명령이 여러 클럭 사이클을 소비합니다. 대표: x86 (Intel, AMD)
RISC (Reduced Instruction Set Computer)
"명령어를 단순·적게 만들자"는 철학. 메모리 접근은 LOAD/STORE 명령으로만, 산술은 레지스터끼리만. 명령어 길이 고정(보통 4 byte), 거의 모든 명령이 1~2 사이클. 대표: ARM, RISC-V, MIPS, PowerPC
CISC vs RISC — 명령어 길이가 다르다 CISC (x86) 가변 길이 명령어 — 1~15 byte 1B 4 byte 8 byte (메모리 ↔ 메모리 + 연산) 3 B 5 byte 2 B 9 byte → 디코더가 "이 명령이 몇 byte인지" 파싱하는 데만 큰 회로 필요 RISC (ARM, RISC-V) 고정 길이 명령어 — 모두 4 byte 4 byte 4 byte 4 byte 4 byte 4 byte 4 byte 4 byte 4 byte → 디코더가 단순해서 파이프라인·병렬화에 유리 + 전력 효율 ↑ 같은 작업 (예: 두 변수 곱셈) 비교 CISC: imul [rax], 5 — 메모리 읽고·곱하고·다시 저장까지 명령 1개로 끝 (대신 해석에 시간 ↑) RISC: ldr r1, [r0] / mul r1, r1, #5 / str r1, [r0] — 3개 명령 필요, 대신 각각 1 사이클
항목CISC (x86)RISC (ARM, RISC-V)
명령어 개수수천 개수십~수백 개
명령어 길이가변 (1~15 byte)고정 (보통 4 byte)
한 명령의 클럭1~여러 사이클거의 항상 1~2 사이클
메모리 접근모든 명령에서 가능LOAD/STORE 명령으로만 (load-store 아키텍처)
레지스터 수적음 (16개)많음 (32+개)
전력 효율나쁨 (복잡한 디코더)좋음 (단순)
컴파일러 부담적음 (강한 명령 1개로 해결)큼 (여러 명령 조합해야)
대표 제품Intel Core, AMD RyzenApple M, ARM 모바일, Snapdragon, RISC-V
현실은 이미 경계가 흐려짐

현대 x86 CPU는 내부적으로 RISC처럼 동작합니다. 디코더가 CISC x86 명령을 받으면 즉시 "micro-op (μ-op)"라는 RISC-like 작은 명령으로 쪼개 실행. 그래서 외부 인터페이스는 CISC, 내부 엔진은 RISC가 됐습니다.

반대로 ARM도 점점 명령어를 추가해 복잡해지고 있어 (NEON, SVE 등), 사실 "순수 CISC"나 "순수 RISC"는 더 이상 존재하지 않습니다. 다만 출발점이 다르고 그 영향이 남아있을 뿐.

3.5 ARM vs x86 vs RISC-V — 명령어 아키텍처 3대 진영

현재 시장을 사실상 3개의 ISA가 나눠 갖고 있습니다. 각자 강점·약점이 다르고, 라이선스 정책도 다릅니다.

구분x86 / x86-64ARMRISC-V
출생1978년 (Intel 8086)1985년 (Acorn)2010년 (UC Berkeley)
철학CISCRISCRISC + 모듈식 확장
라이선스폐쇄 — Intel·AMD만 제조유료 라이선스 — 누구나 살 수 있음완전 오픈소스 — 무료
주 시장데스크탑·노트북·서버스마트폰·태블릿·Mac·임베디드·일부 서버임베디드·연구·중국·인도 정부 후원
전력 효율나쁨 (와트 단위)좋음 (mW~W)유연 (설계에 따라)
32비트 이름x86 / i386 / IA-32ARMv7 (AArch32)RV32
64비트 이름x86-64 / x64 / AMD64ARMv8/v9 (AArch64)RV64
대표 제품Intel Core i9, AMD Ryzen, XeonApple M3/M4, Qualcomm Snapdragon, AWS GravitonSiFive, 알리바바 Xuantie, Tenstorrent
3대 ISA의 시장 점유율 (대략, 2026년 기준) 데스크탑·노트북 x86 — 약 80% ARM 18% 스마트폰·태블릿 ARM — 99%+ 서버·클라우드 x86 — 80% ARM 18% 임베디드·MCU ARM — 큰 비중 RISC-V 슈퍼컴퓨터 x86 — 60% ARM 36% (Fugaku 등) x86 (Intel·AMD) ARM RISC-V 인사이트 x86 점유율은 데스크탑·서버에서 줄어드는 중. ARM이 Apple M칩(2020년 Mac 전환), AWS Graviton 등으로 잠식 RISC-V는 임베디드부터 침투 중. 라이선스 비용 0이라 중국·인도가 국가 차원에서 밀고 있음

32비트와 64비트 — x86과의 관계 정리

"64비트 윈도우는 x86이야 x64야?"처럼 헷갈리기 쉬운 개념입니다. 결론부터 말하면 x86은 ISA 패밀리 이름이고, 32비트·64비트는 그 안의 두 변종입니다.

"비트수"가 의미하는 것
한 명령에서 다룰 수 있는 데이터·주소의 폭입니다.
  • 레지스터 크기: 32비트면 한 레지스터에 32비트 정수 1개, 64비트면 64비트 정수 1개
  • 메모리 주소 폭: 32비트는 최대 2³² = 4GB 주소 가능, 64비트는 2⁶⁴ ≈ 16엑사바이트 가능
  • → 4GB 이상 RAM을 쓰려면 64비트 필요. 그래서 2003~2010년경 일반 PC가 64비트로 전환
"x86", "x64", "AMD64", "x86-64", "i386" — 같은 가족의 다른 이름들 x86 패밀리 (ISA 이름) "x86"은 인텔 8086·80286·80386·80486 시리즈에서 따온 통칭 32비트 변종 레지스터·주소 = 32 bit 최대 메모리: 4 GB 별칭 x86 · IA-32 · i386 · i686 대표 CPU Pentium · Pentium 4 시기: 1985~2003 64비트 변종 레지스터·주소 = 64 bit 최대 메모리: 16 EB (사실상 무한) 별칭 (모두 같은 것) x86-64 · x64 · AMD64 · Intel 64 대표 CPU Core i 시리즈 · Ryzen · Xeon 시기: 2003~현재 하위 호환 64비트 CPU는 32비트 명령도 그대로 돌릴 수 있음 (호환성 유지)
"x86", "x64", "AMD64"가 모두 같은가? — 헷갈림 정리
  • x86 = ISA 패밀리 이름. 좁게는 32비트, 넓게는 64비트까지 통칭
  • x86-64 = x64 = AMD64 = Intel 64 — 모두 같은 것. AMD가 먼저 2003년 출시해서 "AMD64"라 부르고, Intel이 따라오면서 "Intel 64"라고도 함. 윈도우/MS 표기는 "x64", 리눅스는 "x86_64"
  • i386 / IA-32 = 32비트 x86의 다른 이름
  • 윈도우 설치할 때 "32-bit"는 i386 x86, "64-bit"는 x86-64
  • ARM도 똑같이 32비트(AArch32)와 64비트(AArch64) 변종 있음. iPhone은 2013년 5s부터 64비트(AArch64)
내 PC가 어느 ISA·몇 비트인지 확인
  • Windows: 설정 → 시스템 → 정보 → 시스템 종류 ("64비트 운영 체제, x64 기반 프로세서")
  • macOS: uname -marm64(M칩) 또는 x86_64(Intel Mac)
  • Linux: uname -mx86_64, aarch64(ARM), riscv64

3.6 SIMD — CPU 안의 미니 GPU

SIMD (Single Instruction, Multiple Data)
하나의 명령으로 여러 데이터를 동시에 처리하는 CPU 내장 기능. 보통 ALU는 한 번에 정수 한 쌍만 계산하지만, SIMD 유닛은 한 번에 4·8·16개의 정수/실수를 동시에 처리합니다. 말 그대로 "CPU 안에 들어 있는 작은 GPU".
일반 (스칼라) 명령 vs SIMD (벡터) 명령 ▼ 일반 명령 (스칼라) — 한 번에 1쌍 ALU + 연산 A: 5 B: 3 C: 8 1 사이클에 덧셈 1번 ▼ SIMD 명령 (벡터) — 같은 명령으로 4쌍 동시 A: 5 2 7 1 B: 3 4 6 2 SIMD 유닛 4개 ALU 병렬 한 명령으로 8 6 13 3 1 사이클에 덧셈 4번 (4배 빠름) "같은 연산을 다른 데이터에 동시 적용" — 이미지·영상·음성·AI 추론에 적합

주요 SIMD 확장

ISASIMD 확장벡터 폭등장
x86MMX64 bit (정수 8x8bit / 4x16bit)1996
SSE / SSE2 ~ 4.2128 bit1999~
AVX / AVX2256 bit2011~
AVX-512512 bit (16개 32bit float 동시)2016~
ARMNEON128 bit2009
SVE / SVE2가변 (128~2048 bit)2016~
RISC-VV 확장가변2021
SIMD가 빠른 이유 + GPU와의 차이
  • SIMD ≈ "CPU 안의 4~16개 짜리 미니 GPU"
  • GPU는 5000+ ALU지만 CPU에서 보내는 데 시간(warm-up)이 큼
  • SIMD는 CPU 안에 있어 warm-up 없음 — 짧고 가벼운 병렬 작업에는 GPU보다 SIMD가 빠를 수 있음
  • 활용 사례: 이미지 필터(밝기·블러), 영상 디코딩(H.264/HEVC), 오디오 인코딩(mp3, AAC), 압축(LZ4, Zstd), 암호화(AES), 작은 신경망 추론(llama.cpp가 AVX·NEON으로 LLM 돌림)

4. MCU (Micro Controller Unit) — 손가락만 한 컴퓨터

MCU (Micro Controller Unit)
CPU + 약간의 RAM + 약간의 Flash 메모리 + I/O 핀을 한 칩에 모두 통합한 "단일 칩 컴퓨터". 손가락 한 마디 크기에 운영체제 없이도 동작하는 작은 시스템을 만들 수 있어, 가전·자동차·완구·IoT의 핵심 부품입니다.
MCU 구조 — 한 칩 안에 모든 것이 통합됨 MCU 칩 (한 패키지 안) 작은 CPU 코어 ARM Cortex-M 8/16/32 bit SRAM 2KB ~ 1MB 변수·스택 Flash 16KB ~ 2MB 프로그램 저장 I/O 페리페럴 GPIO · ADC · UART SPI · I²C · PWM · Timer ▲ 이 모든 게 한 IC 패키지 안에 들어있음. 외부 부품 거의 없이도 동작 VCC GND RST PA0 전원만 넣으면 즉시 동작 (운영체제 불필요)
항목내용
잘하는 것 ✓실시간 제어, 센서 읽기, 모터 제어, 전력 최소 소비 (배터리 수개월~수년)
못하는 것 ✗큰 RAM 필요한 작업, 복잡한 GUI, 운영체제 위 다중 앱 실행
가격$0.10 (8051, 단순 칩) ~ $20 (STM32H7 고급) · 대량 양산 시 매우 저렴
대표 제품Arduino (AVR), STM32 (ARM Cortex-M), ESP32 (WiFi 내장), 라즈베리파이 Pico (RP2040)
쓰이는 곳가전(에어컨·세탁기), 자동차 ECU(차 한 대에 50~150개), IoT 센서, 완구, 의료기기
CPU와 MCU의 차이 — "PC vs 마이크로 컨트롤러"
  • CPU는 외부에 RAM 모듈·SSD·GPU를 끼워야 동작. 운영체제 위에서 앱 실행. 와트~수백 와트 소비
  • MCU는 그 자체로 완결. 배터리 하나면 몇 년 돔. 밀리와트 소비. 코드는 보통 C/C++로 펌웨어 작성
  • 요즘은 경계가 흐려져 ESP32, 라즈베리파이 같은 "MCU 같지만 OS도 돌리는" 중간 종류도 등장

MCU에 DRAM이 없는 이유 — "필요 없어서 일부러 안 씀"

일반 PC는 DDR5 DRAM 모듈을 끼워야 동작하지만, MCU는 외부 DRAM 없이 칩 안의 SRAM과 Flash만으로 동작합니다. 이유는 4가지:

이유설명
① 데이터가 적음 센서 값 읽고 LED 깜빡이는 데 16GB RAM 불필요. 보통 수 KB~수 MB면 충분 → 내장 SRAM으로 해결
② 비용·면적·전력 폭증 MCU 단가는 100원~몇 천 원 수준. 별도 DRAM 칩(최소 수천 원)을 붙이면 단가 자체가 무너짐 + 보드 면적·핀 수 증가
③ DRAM은 전력 먹깨비 휘발성이라 끊임없이 리프레시 필요 → "배터리 몇 년 동작"이라는 MCU의 핵심 장점이 깨짐
④ DRAM은 시작이 느림 MCU는 전원 들어오면 즉시 동작해야 함 (예: 자동차 에어백, 의료기기). DRAM 초기화에는 수십 ms 필요 → 부적합
결론
MCU 안에는 SRAM(변수·스택용) + Flash(프로그램·상수용) 두 종류 메모리만 있고, 외부 DRAM은 안 씁니다. 외부 DRAM이 필요할 정도의 작업이라면 그건 이미 MCU가 아니라 SoC/CPU 영역입니다.

Flash란 무엇인가 — 전원 꺼져도 유지되는 메모리

Flash Memory (플래시 메모리)
전원이 꺼져도 데이터가 사라지지 않는(비휘발성) 메모리. 셀 안에 전자를 가둬서 0/1을 기록하고, 전원이 없어도 그 전자가 그대로 갇혀 있어 수년~수십 년 보관됩니다. SSD·USB 메모리·SD카드·MCU의 프로그램 영역에 모두 이 Flash가 들어있습니다.
메모리휘발성속도크기주 용도
SRAM (캐시·MCU 내장)휘발성 ✗매우 빠름 (1ns)매우 작음 (KB~MB)CPU 캐시, MCU 변수 메모리
DRAM (DDR·LPDDR·GDDR·HBM)휘발성 ✗빠름 (70ns)중간 (GB)메인 메모리
Flash (NAND·NOR)비휘발성 ✓중간 (50μs)큼 (GB~TB)SSD, USB, MCU 프로그램, 스마트폰 저장소
HDD (자기 디스크)비휘발성 ✓느림 (10ms)매우 큼 (TB)대용량 저장·백업

Flash의 두 종류 — NOR vs NAND

구분NOR FlashNAND Flash
속도읽기 빠름읽기 느림, 쓰기 빠름
접근 방식임의 접근 (RAM처럼)블록 단위 접근
크기·가격작음, 비쌈큼, 쌈 (비트당 가격 1/10)
주 용도MCU 프로그램 영역, 부팅 코드, BIOSSSD·USB·SD카드·스마트폰 저장소
왜?MCU는 "프로그램을 그 자리에서 바로 실행"해야 함 → RAM처럼 임의 접근 가능해야대용량 저장이 목적 → 블록 읽고 쓰면 됨
관계 정리
  • MCU의 Flash는 NOR 방식 — 프로그램 코드를 그 자리에서 실행 (XIP, eXecute-In-Place)
  • SSD의 Flash는 NAND 방식 — 대용량 파일 저장
  • SSD에 대한 더 자세한 내용 → 메모리 스터디 가이드 - 5장

5. GPU (Graphics Processing Unit) — 병렬 계산 군대

5.1 정의와 구조 — SIMT

GPU (Graphics Processing Unit)
원래는 화면의 수백만 픽셀을 동시에 계산하려고 만든 칩. 단순한 ALU를 수천~수만 개 늘어놓고, 똑같은 명령을 다른 데이터에 한꺼번에 적용하는 SIMT(Single Instruction, Multiple Threads) 방식으로 동작합니다. 이 구조가 우연히도 딥러닝의 행렬 곱셈과 똑같은 일이라, 지금은 AI의 핵심 부품이 되었습니다.

GPU의 메모리 — 왜 CPU와 다른 메모리를 쓰나?

GPU는 수천 개 코어가 동시에 데이터를 빨아들이므로, 일반 DDR5 DRAM처럼 평범한 메모리로는 코어들이 굶어버립니다. 그래서 GPU 전용으로 만들어진 두 종류의 DRAM, GDDRHBM을 씁니다. 둘 다 DRAM이지만 "어떻게 GPU 옆에 붙이느냐"가 다릅니다.

GPU의 메모리 계층 + GDDR vs HBM 배치 차이 GPU 내부 메모리 계층 GPU Cores (5000+) L1 / Shared SRAM SM 안 · 수십 KB · 1~2ns L2 캐시 (코어들 공유) 수십 MB · 10ns VRAM (GDDR or HBM) "비디오 RAM" · GPU 전용 DRAM 8~192 GB · 100ns · 대역폭이 핵심 CPU 시스템 RAM (PCIe) DDR5 · μs 단위로 느림 SSD (영구 저장) ↑ 위로 갈수록 빠르고 작음 VRAM의 두 종류 — 물리적 배치 차이 GDDR (게임용) GPU 다이 GDDR GDDR GDDR GDDR 메모리 칩이 GPU 옆에 흩어져 부착 버스 폭 좁음 (32bit×N) 대신 클럭 빠름 (~24 Gbps) → 대역폭 ~1 TB/s 싸고 단순, 게이밍 GPU의 표준 HBM (AI/HPC용) Interposer (한 패키지) GPU 다이 HBM 적층 HBM 적층 DRAM을 8~16층 쌓아 GPU 바로 옆에 부착 버스 폭 초광폭 (1024bit×N) 대신 클럭 낮음 (~10 Gbps) → 대역폭 ~5 TB/s (HBM3E) 비싸지만 압도적 대역폭, AI 학습용
구분GDDR (GDDR6 / GDDR6X / GDDR7)HBM (HBM3 / HBM3E / HBM4)
물리 형태일반 IC 칩, GPU 다이 옆에 흩뿌려 부착DRAM을 8~16층 적층 후 GPU 바로 옆에 짝지어 부착 (interposer)
버스 폭좁음 (32~512 bit)매우 넓음 (1024~8192 bit)
클럭매우 빠름 (20~32 Gbps/pin)상대적으로 낮음 (6~10 Gbps/pin)
대역폭~1 TB/s3~6+ TB/s
가격저렴10배 이상 비쌈
주 용도게이밍 GPU: RTX 5070·5080·5090, AMD RadeonAI/HPC GPU: NVIDIA H100·H200·B200, AMD Instinct MI300
왜 GPU는 두 종류의 메모리가 필요했나?
  • 게임: 1초에 60~144프레임만 그리면 되므로 ~1 TB/s 대역폭이면 충분 → 싸고 단순한 GDDR로 OK
  • AI 학습/추론: LLM 모델 파라미터가 수십~수백 GB. 매 토큰마다 모두 GPU 코어로 끌어 와야 함 → 대역폭이 부족하면 코어들이 굶어 GPU가 5%만 일함 → HBM 필수

더 자세한 내용 → 메모리 스터디 가이드 - HBM

5.2 CPU vs GPU — 트럭 vs 자전거 부대

CPU와 GPU의 코어 배치 비교 CPU — 거대 코어 8개 "트럭 8대" C1 C2 C3 C4 C5 C6 큰 L3 캐시 제어부 GPU — 작은 코어 5000+ "자전거 부대 수천" … 수천 개의 작은 ALU … CPU 8코어: 한 번에 8개 작업, 각 작업 복잡 분기·로직·OS·웹 등 다양한 일 GPU 5000+: 한 번에 5000개 같은 일 픽셀 색·행렬 곱셈 같은 단순 반복

5.3 강점·약점·가격

구분내용
잘하는 것 ✓대규모 행렬·벡터 연산, 4K/8K 그래픽 렌더링, AI 학습/추론, 과학 시뮬레이션, 비트코인/이더리움 채굴(과거)
못하는 것 ✗분기 많은 코드(if/else 많이), 단일 스레드 처리, 짧고 가벼운 작업 (시작 비용 큼)
전형적 코어 수2,000~16,000 CUDA 코어 (NVIDIA), 비슷한 수의 Stream Processor (AMD)
대표 메모리GDDR6/GDDR7 (게임용), HBM3/HBM3E/HBM4 (AI용 고가 모델)
가격$200 (저가) · $2,000 (RTX 5090) · $30,000~$40,000 (NVIDIA H100/H200) · $50,000+ (B200)
대표 제품NVIDIA GeForce/RTX, A100/H100/B200 (데이터센터), AMD Radeon/Instinct, Apple GPU (M 시리즈 내장)

5.4 GPU 프로그래밍 API — CUDA · OpenCL · ROCm · Vulkan Compute

GPU에 "이 데이터 가져가서 이렇게 처리해" 명령을 보내려면 전용 프로그래밍 API가 필요합니다. CPU는 C/Python으로 끝나지만, GPU는 ISA·드라이버가 모두 비공개라 제조사가 제공하는 API를 거쳐야 합니다.

앱 코드 → GPU API → 드라이버 → GPU 하드웨어 앱 코드 (PyTorch · TensorFlow · 게임 엔진 · Blender …) "이 행렬 곱해줘" / "이 픽셀 그려줘" GPU 프로그래밍 API 계층 CUDA NVIDIA 전용 OpenCL 크로스 플랫폼 ROCm / HIP AMD Vulkan Compute 그래픽 + 컴퓨트 Metal · DirectML Apple · MS GPU 드라이버 (OS 커널 모듈) API 호출을 GPU가 이해하는 명령어로 변환 GPU 하드웨어 (NVIDIA · AMD · Intel · Apple · Qualcomm) CUDA 코어 / Stream Processor / Compute Unit 등이 실제로 계산 수행 앱이 어떤 API를 쓰느냐가 "어떤 GPU에서 돌릴 수 있느냐"를 결정

5대 API 비교

API개발사지원 GPU주 용도라이선스
CUDANVIDIANVIDIA 전용AI 학습·추론, HPC, 과학 계산폐쇄 (NVIDIA만)
OpenCLKhronos (오픈 표준)모든 GPU·CPU·FPGA크로스 플랫폼 범용 컴퓨팅오픈 표준
ROCm / HIPAMDAMD GPUCUDA 대체 (HIP로 CUDA 코드 호환)오픈소스
Vulkan ComputeKhronos모든 현대 GPU그래픽·게임 엔진 안의 컴퓨트오픈 표준
MetalAppleApple GPU만macOS / iOS 그래픽·AI (MLX)폐쇄 (Apple만)
DirectMLMicrosoftWindows 모든 GPUWindows AI 추론폐쇄
SYCL · oneAPIIntel + Khronos모든 가속기차세대 오픈 표준 (C++ 기반)오픈

왜 CUDA가 압도적인가?

기술적으로는 OpenCL이 더 범용이지만, 시장은 CUDA가 사실상 표준입니다. 이유는 "먼저 시작 + 생태계 + NVIDIA의 적극적 지원"이 결합된 결과입니다.

관점CUDAOpenCL
출시2007년2009년 (Apple 주도, 후일 Khronos에 이관)
주요 AI 프레임워크PyTorch·TensorFlow·JAX 모두 CUDA 우선제한적 (대부분 미지원)
예제 코드·튜토리얼매우 풍부적음
NVIDIA 협력전담 인력·도구 지원NVIDIA가 적극적이지 않음
이식성NVIDIA 잠금이론상 어디서나 동작, 실제론 성능 차이 큼
결과AI 분야 사실상 독점틈새 + 임베디드에서 일부 사용
"NVIDIA 락인(lock-in)" — CUDA의 양면
  • 장점: 잘 만들어져 있고, 도구·라이브러리·커뮤니티가 풍부. AI 개발자 거의 모두 CUDA에 익숙
  • 단점: CUDA로 짠 코드는 NVIDIA GPU에서만 돌아감 → NVIDIA에 종속, 가격 협상력 0
  • 그래서 AMD의 HIP, Intel의 SYCL, OpenAI Triton 등이 "CUDA 코드를 자동 변환"하는 도구를 만들어 락인 깨려고 시도 중
  • 2025년 기준 AMD ROCm/HIP가 빠르게 성장 — Llama 같은 오픈 모델은 AMD GPU에서도 점차 돌아감
실전 — 어떤 API를 언제 쓰나?
  • AI 학습/추론 (PyTorch, TF): CUDA가 표준. AMD GPU는 ROCm
  • 게임 / 실시간 렌더링: Vulkan, DirectX 12, Metal (그래픽 + 약간의 컴퓨트)
  • Apple Silicon에서 AI: Metal Performance Shaders 또는 MLX
  • Windows에서 가벼운 AI 추론: DirectML (제조사 무관)
  • 모바일/임베디드 컴퓨트: OpenCL, Vulkan Compute
  • 크로스 플랫폼 새 코드: SYCL (Intel oneAPI), WebGPU (브라우저)

6. NPU (Neural Processing Unit) — AI 추론 가속기

NPU (Neural Processing Unit)
신경망 추론에 특화된 가속기. 행렬·벡터 곱셈을 GPU보다 더 효율적으로(전성비 기준) 수행하면서, GPU보다 훨씬 작고 저렴합니다. 모바일·임베디드 환경에서 "현장 AI"를 돌리는 게 주 용도입니다.

딥러닝은 결국 "행렬 곱셈 + 활성화 함수"의 반복입니다. NPU는 이 작업만 잘하도록 설계됐고, 종종 INT8/FP16 같은 낮은 정밀도로 동작해 전력을 절감합니다.

딥러닝을 잘하도록 만든 NPU가 왜 학습은 못 하나?

"행렬 곱셈을 빠르게 한다"는 점은 학습·추론 둘 다 같습니다. 그런데 학습과 추론은 "행렬 곱셈 외에 필요한 일"이 완전히 다릅니다. NPU는 추론에 맞게 디자인됐기 때문에 학습에는 부족한 게 너무 많아요.

학습 vs 추론 — 일의 종류가 다름 ▼ 추론 (Inference) — NPU가 잘하는 것 ① Forward Pass 입력 → 행렬곱 → 활성화 → 출력 ② 결과 사용 (끝) 예측 출력 → 사용자에게 전달 필요한 것: • 행렬곱 (잘함 ✓) • INT8 정밀도면 충분 • 모델 가중치만 메모리에 (1~수십 GB) ▼ 학습 (Training) — NPU 못함 ① Forward Pass 행렬곱+활성화 (추론과 동일) ② Loss 계산 + Backward Pass 기울기 역전파 (체인룰 미분) ③ Optimizer Step Adam 등으로 weight 업데이트 필요한 것: • 행렬곱 + 역방향 미분 회로 FP16/BF16/FP32 고정밀 정확도 5~10배 큰 메모리 (gradient·optimizer state) • 광대역 HBM (수십~수백 GB) → NPU는 ②·③에 필요한 회로·메모리·정밀도가 없어서 학습 못 함
NPU가 학습을 못 하는 4가지 구체적 이유
  1. 역전파 회로 없음: NPU는 "Forward 곱셈"만 빠르게 하도록 설계됨. 학습엔 미분값을 역방향으로 흘리는 회로가 추가로 필요한데 NPU엔 없거나 매우 약함
  2. 정밀도 부족: NPU는 보통 INT8(8비트 정수)로 동작. 추론은 INT8로도 정확도 손실이 거의 없지만, 학습은 미세한 기울기 누적이 핵심이라 FP16/BF16 이상이 필수
  3. 메모리가 너무 작음: 학습 시 활성화값 + 기울기 + 옵티마이저 상태(Adam의 m, v)까지 다 저장해야 함 → 추론 대비 메모리 5~10배 필요. NPU의 수 MB 온칩 SRAM으론 절대 안 됨
  4. 대역폭 부족: 학습은 거대한 가중치·기울기를 매 스텝마다 메모리와 왔다 갔다 함. NPU는 LPDDR(공유 RAM)을 쓰므로 HBM 대비 대역폭이 10~50배 부족

→ 그래서 학습은 GPU/TPU(HBM 장착)의 영역, 학습 끝난 모델 추론은 NPU도 가능합니다.

NPU vs GPU vs TPU — 셋 다 AI 가속기인데 뭐가 다른가

구분GPU (H100)TPU (v5)NPU (Apple, Samsung)
주 용도학습 + 추론 (둘 다)학습 + 추론 (둘 다)추론 전용 (학습 ✗)
구조SIMT (수천 코어)Systolic Array (격자)전용 행렬곱 유닛
유연성매우 높음 (CUDA 코어로 다양한 알고리즘)중간 (Google XLA 컴파일러 통해)낮음 (정해진 신경망 연산만)
정밀도FP64/32/16/BF16/INT8BF16/INT8 중심INT8 중심 (일부 FP16)
메모리HBM 80~192 GBHBM 32~95 GB온칩 SRAM 몇 MB + 공유 LPDDR
전력700W (H100)~200W1~5W (모바일)
가격$30,000+클라우드 임대만SoC 내장 (가격 무의미)
주 사용처AI 서버, 데이터센터Google 자체 AI 인프라스마트폰, 자율주행, 엣지
항목내용
잘하는 것 ✓AI 추론(이미 학습된 모델 실행), 음성 인식, 카메라 사진 보정, 얼굴 인식, 실시간 번역 — 모두 모바일에서 즉시
못하는 것 ✗AI 학습(주로 GPU 영역), 비-AI 일반 연산, 큰 모델 (메모리 제한)
대표 메모리온칩 SRAM (수 MB) + 시스템 LPDDR 공유
가격모바일 SoC에 통합되어 별도 가격 없음. 독립 칩은 $10~$100 수준
대표 제품Apple Neural Engine (iPhone), Samsung NPU (Exynos), Google Tensor, Qualcomm Hexagon, Huawei Ascend
쓰이는 곳스마트폰 (사진 후보정, Siri/Bixby), 자율주행차 인식, 스마트 스피커, 의료 영상 진단

7. TPU (Tensor Processing Unit) — Google의 AI 전용

TPU (Tensor Processing Unit)
Google이 만든 딥러닝 학습/추론 전용 ASIC. 행렬 곱셈에 극도로 최적화된 시스톨릭 어레이(Systolic Array) 구조가 핵심입니다. NPU가 모바일용이라면 TPU는 데이터센터용 거대 가속기.

시스톨릭 어레이 — TPU의 비밀 무기

일반 칩이 메모리에서 데이터를 매번 가져와 ALU에 넣는다면, TPU는 ALU들을 격자(grid)로 늘어놓고 데이터를 한쪽 끝에서 흘려보내면서 연산합니다. 데이터가 격자를 지나가는 동안 자동으로 곱셈·누적이 되며 결과가 반대쪽 끝에서 나옵니다.

Systolic Array — 데이터가 격자를 흐르며 연산되는 구조 Matrix A a₁₁ a₂₁ a₃₁ PE ×+ PE ×+ PE ×+ PE ×+ PE ×+ PE ×+ PE ×+ PE ×+ PE PE PE PE Matrix B (위에서 흘러내림) Matrix C = A×B c₁₁ c₂₁ c₃₁ PE = Processing Element (작은 곱셈기+누적기) 한 사이클에 256×256 곱셈을 한 번에 — GPU보다 30~80배 효율
항목내용
잘하는 것 ✓대규모 행렬 곱셈, Transformer 같은 LLM 학습/추론
못하는 것 ✗비-신경망 작업, 분기 많은 코드, 일반 그래픽
대표 메모리HBM (수십~수백 GB)
가격판매 안 함. Google Cloud에서 시간당 임대 ($1~$10/h per TPU)
대표 제품Google TPU v1~v5e/v5p, TPU Trillium (v6)

TPU vs GPU — 같은 AI인데 왜 따로 만드나?

둘 다 행렬 곱셈을 잘하지만 "태생"이 다릅니다. GPU는 1990년대 그래픽 가속 카드에서 출발해 어쩌다 AI에 쓰이게 됐고, TPU는 처음부터 AI 한 가지만을 위해 설계됐습니다.

구분GPUTPU
본질SIMT 범용 프로세서 (CUDA 프로그램 가능)AI 전용 ASIC (회로 자체가 신경망용)
코어 구조독립적인 작은 코어 5000+, 각자 다른 명령 수행 가능Systolic Array — 격자에 데이터가 흐르며 자동 곱셈+누적
유연성다양한 알고리즘 (AI·그래픽·과학계산·암호화 등)행렬 곱셈만, 그 외엔 사실상 못 함
같은 행렬 곱셈 효율코어들이 메모리 ↔ 레지스터 왕복 필요한 번 흘려 넣으면 격자가 알아서 처리 → GPU 대비 5~10배 효율
판매 형태일반 판매 (NVIDIA가 누구에게나 판매)Google 내부 + Google Cloud 임대만 (외부 판매 ✗)
소프트웨어 생태계CUDA — 모든 AI 라이브러리 표준 (PyTorch, TF)JAX·TensorFlow 중심 (PyTorch는 제한적)
비유다재다능한 만능 조리도구 세트스시 만드는 데만 쓰는 자동화 컨베이어
왜 Google은 NVIDIA GPU 안 쓰고 TPU를 만들었나?
  • 비용: Google 규모(수십만 장 필요)에선 NVIDIA에 매년 수십조 원을 지불해야 함. 직접 ASIC 설계가 더 쌈
  • 최적화: 자기들 워크로드(BERT, Gemini, Search 등)에만 맞춰 회로 깎아 GPU 대비 전성비 우위
  • 공급 안정성: NVIDIA에 의존하지 않음. 클라우드 사업 차별화 (TPU를 외부에 임대)

같은 이유로 AWS는 Trainium·Inferentia, Microsoft는 Maia, Meta는 MTIA, Tesla는 Dojo 같은 자체 AI ASIC을 만들고 있습니다. "AI 자체 칩 만들기"가 빅테크의 공통 흐름.

8. AI 추론 시대 — 왜 다시 CPU가 중요해졌나?

"AI = GPU"라는 공식이 굳어진 듯하지만, 2024~2026년 들어 흐름이 바뀌고 있습니다. 학습(Training)은 여전히 GPU·TPU의 영역이지만, 추론(Inference)에서는 CPU의 역할이 빠르게 커지고 있습니다. 왜 그럴까요?

8.1 학습과 추론 — 시장 크기가 뒤집힘

핵심 전환
한 모델은 한 번 학습되지만, 수십억 번 추론됩니다. ChatGPT는 한 번 훈련되지만, 사용자가 매일 수억 번 질문합니다. 이 "매일 수억 번" 부담이 GPU만으로 감당이 안 되기 시작했습니다.
학습 vs 추론의 시장·작업 특성 차이 학습 (Training) 모델을 만드는 단계 (수 주~수 개월) 특징: 큰 배치 (수천 샘플 동시 처리) • 지연시간 무관 (어차피 며칠 걸림) • 단일 거대 GPU 클러스터에서 실행 • 분기·로직 적음, 행렬곱이 99% 최적: GPU(H100/B200)·TPU의 무대 ★ 시장 비중: 전체 AI 컴퓨팅의 20~30% 추론 (Inference) 학습된 모델로 답변 생성 (1초~수초) 특징: 작은 배치 (사용자 한 명씩) 지연시간 민감 (즉답 필요) • 분기·문맥·캐시 처리 많음 • 분산 환경, 24×7 가동 최적: CPU도 강력한 옵션 ★ (특히 작은~중간 모델, 엣지) 시장 비중: 전체 AI 컴퓨팅의 70~80% (성장 중)

8.2 GPU만으로 안 되는 이유 — 추론의 5가지 함정

함정설명
① 작은 배치 = GPU 비효율 GPU는 한 번에 수천 개 데이터를 같은 명령으로 처리해야 효율 최고. 사용자 1명 요청 1개만 처리하면 코어 5000개 중 50개만 일함 → 90% 낭비, 전기·돈 손해
② Warm-up 지연 GPU는 잠들었다 깨우는 데 수십~수백 ms. 짧은 추론에는 깨우는 시간이 추론 시간보다 길어짐
③ 비-행렬곱은 CPU 일 LLM 추론 한 번에는 토큰 디코딩·KV cache 관리·JSON 파싱·입력 검증·후처리·네트워크 응답 등 비-행렬곱 작업이 절반. 이건 다 CPU가 처리
④ VRAM 한계 큰 모델은 GPU 한 장의 VRAM에 안 들어가 여러 장으로 쪼개야 함. 반대로 작은 모델(7B 이하)은 굳이 비싼 GPU 안 쓰고 CPU의 DDR5에 올려도 충분
⑤ 전력·돈 효율 추론용 GPU 시간당 $1~$10 vs 평범한 CPU 서버 $0.05 — 20~200배 차이. 모델이 작거나 응답이 짧으면 CPU가 훨씬 쌈

8.3 추론용 CPU의 부활 — 최근 흐름

흐름내용
Apple Silicon (M3/M4) 통합 메모리 구조로 CPU·GPU·NPU가 같은 RAM 공유. LPDDR 128GB+에 CPU 메모리 대역폭이 GPU급 → 70B 모델까지 한 노트북에서 추론 가능
AMD EPYC · Intel Xeon AI CPU에 AMX (Advanced Matrix Extensions) 같은 행렬 곱셈 전용 명령어 추가 → CPU 자체가 가벼운 NPU 기능 보유
llama.cpp · MLX · vLLM CPU 최적화 추론 엔진이 매년 빨라짐. 7B 모델 정도는 CPU만으로 충분히 챗봇 구현 가능
엣지 추론 스마트폰 안의 LLM, 노트북에서 돌아가는 Copilot+ PC 모두 CPU + NPU + GPU 협업으로 동작 (단독 GPU 없음)
경제성 "정확도 100% GPU 추론 vs 정확도 95% CPU 추론, 비용 1/20" → 많은 서비스에서 CPU 선택
AI 서비스 한 요청의 처리 흐름 — CPU도 풀가동 👤 사용자 질문 입력 ① CPU 수신 HTTP 요청 받음 ~1ms ② CPU 전처리 토큰화·라우팅 ~5ms ③ GPU 추론 행렬곱·토큰 생성 ~500ms ④ CPU 후처리 디코딩·JSON ~5ms ⑤ CPU 송신 사용자에게 응답 전송 👤 사용자 답변 표시 한 요청 = CPU 작업 4번 + GPU 작업 1번 → GPU만으론 못 돌아감. CPU가 요청을 받고, 데이터를 준비하고, GPU에 넘기고, 결과를 받아 사용자에게 보내는 전 과정 담당 → 작은 모델(7B 이하)은 ③조차 CPU에서 처리 가능 → GPU 없이 끝까지 CPU만으로 추론 완결
🎯 그래서 결론

"GPU로 다 돌리면 안 되나?" — 됩니다. 하지만 비효율적입니다.

  • 큰 모델(70B+) 추론은 여전히 GPU가 압도적
  • 중소 모델 + 짧은 응답은 CPU만으로도 충분 + 훨씬 쌈
  • 실제 서비스는 CPU+GPU+NPU의 협업 구조: CPU가 큰 그림(전처리·라우팅·후처리)을, GPU/TPU가 무거운 행렬곱을, NPU가 모바일 단말의 가벼운 추론을 담당

"AI = GPU"는 학습 기준 옛 공식. 추론 시대엔 "CPU+GPU+NPU 협업"이 새 공식입니다.

9. ASIC vs FPGA — "전용 칩"의 두 갈래

9.1 ASIC (Application-Specific IC) — 한 가지에만 미친 칩

ASIC (Application-Specific Integrated Circuit)
특정 용도 하나만 위해 설계된 맞춤 칩. 한 번 회로를 굳히면 변경 불가. 그 한 가지 작업에 대해서는 GPU·CPU를 압도하는 성능과 전성비를 냅니다. TPU도 사실 ASIC의 일종이며, 비트코인 채굴기·통신 모뎀·자동차 ECU의 일부도 ASIC입니다.

9.2 FPGA (Field-Programmable Gate Array) — 회로를 코딩하는 칩

FPGA (Field-Programmable Gate Array)
"논리 게이트 격자"가 들어있는 칩으로, 사용자가 회로 자체를 프로그래밍할 수 있습니다. CPU에 코드 짜듯 짜는 게 아니라 "이 게이트와 저 게이트를 연결해" 식으로 하드웨어를 합성합니다. 한 번 만든 회로가 마음에 안 들면 다시 합성하면 됨 — ASIC의 유연성 버전.

9.3 ASIC vs FPGA — 둘의 비교

항목ASICFPGA
회로 변경불가 — 한 번 굳히면 끝가능 — 합성 다시 하면 됨
성능최강 (전용 회로)좋지만 ASIC보다 느림 (오버헤드)
전성비최강중간
설계 비용매우 비쌈 ($수백만~수억) — 마스크 제작·검증저렴 — 합성·플래시만
단위 가격대량 생산 시 매우 싸짐 (몇 달러)항상 비교적 비쌈 ($100~$5,000)
최소 효율 수량수십만 개 이상 양산해야 본전1개부터 합리적
주 용도스마트폰 SoC, AirPods 칩, 비트코인 채굴기, TPU, 자동차 인포테인먼트5G 기지국, 고주파 금융 거래, 시제품 개발, 군사·항공 (수정 가능성 필요)
언제 ASIC, 언제 FPGA?
  • "수백만 개 똑같은 거 만들 거고 회로는 절대 안 바꿀 거다" → ASIC. 초기 비용은 크지만 단가가 미친 듯이 싸짐
  • "수백~수천 개만 필요하거나 회로를 자주 바꿀 거다" → FPGA. 초기 비용 거의 없음
  • 스타트업이 새 AI 칩을 만들 때: FPGA로 프로토타입 → 시장 검증 → 충분히 팔리면 ASIC으로 양산

10. 종합 비교표 — 한눈에 보기

장치특징잘하는 것못하는 것가격대대표 메모리
CPU 큰 코어 4~128개, 범용 분기·로직·OS·웹 대규모 병렬 $20 ~ $10K SRAM 캐시 + DDR5
MCU CPU+RAM+Flash 통합 제어·센서·저전력 큰 작업 불가 $0.1 ~ $20 내장 SRAM + Flash
GPU 작은 코어 5000+, 병렬 행렬·그래픽·AI 분기·단일 스레드 $200 ~ $50K GDDR / HBM
NPU 모바일 AI 가속기 AI 추론(저전력) AI 학습·일반 연산 SoC 내장 온칩 SRAM + LPDDR
TPU Systolic Array ASIC 대규모 행렬 곱셈 비-AI 작업 임대만 ($1~$10/h) HBM
ASIC 완전 전용 회로 한 가지 작업의 최강 변경 불가 $수백만 NRE + $수~수십/개 온칩 SRAM 등 케이스별
FPGA 재구성 가능 회로 유연성·시제품 ASIC 대비 효율 $100 ~ $5K 내부 BRAM + 외부 DDR

11. 연산장치와 메모리·저장장치의 관계

연산장치는 메모리 없이 일하지 못합니다. 데이터는 느리지만 거대한 저장장치 → 빠르지만 작은 메모리 순으로 끌어와 ALU에 도달합니다. 이 흐름을 메모리 계층(Memory Hierarchy)이라 부릅니다.

11.1 메모리 계층 피라미드

메모리 계층 — 위로 갈수록 빠르고 작고 비쌈 레지스터 L1 캐시 L2 캐시 L3 캐시 RAM (DDR/LPDDR/GDDR/HBM) SSD (NAND Flash) HDD / 클라우드 ~ 1KB · 0.3ns ~ 64KB · 1ns ~ 1MB · 4ns ~ 64MB · 15ns ~ 32GB · 70ns ~ 1TB · 50μs ~ 10TB · 10ms ↑ 빠름 ↓ 느림 ↑ 비쌈 ↓ 쌈

11.2 데이터의 여정 — SSD에서 ALU까지

"앱을 실행한다"는 것은 결국 저장장치에서 코드와 데이터를 끌어와 점점 위 계층으로 옮기는 일입니다.

데이터의 여정 — SSD에서 ALU까지 (역방향: 결과 저장) [1] SSD / HDD 앱 파일 영구 보관 · 느림 (50μs~10ms) · TB 단위 앱 실행 시 (~50μs) [2] RAM (DRAM) 전원 켜진 동안 보관 · ~70ns (SSD보다 1000배 빠름) · GB 단위 CPU가 명령 가져올 때 (~70ns) [3] L3 → L2 → L1 캐시 (SRAM) 코어 안 · 1~15ns (RAM보다 10~70배 빠름) · 수십 KB~수십 MB 자주 쓸 데이터만 골라 끌어옴 ALU가 사용 직전 (~1ns) [4] 레지스터 (Register) ALU 옆 · 0 cycle 즉시 접근 · 수십~수백 개 (~수 KB) 한 사이클 안에 [5] ALU 연산 (덧셈·곱셈 등) 결과를 즉시 레지스터로 돌려보냄 결과는 역순으로 돌아감 한 줄 요약 위로 갈수록 빠르지만 작고 비쌈. 아래로 갈수록 크고 싸지만 느림. 데이터는 항상 한 칸씩 위로 올라와 ALU에 도달, 결과는 다시 한 칸씩 아래로 내려가 저장. CPU·GPU 모두 이 계층을 자동 관리 (캐시 정책)
왜 이런 계층이 필요한가?

모든 데이터를 레지스터에 넣으면? 1TB의 레지스터가 필요한데, 가격이 수십억 원이고 칩 안에 넣을 수도 없음.

SSD에서 ALU로 직접? SSD 접근이 너무 느려 ALU는 99% 시간을 놀게 됨. 클럭이 GHz여도 의미 없음.

그래서 "자주 쓸 거 같은 데이터는 위로 끌어 올리고, 안 쓰는 건 아래로 내려보내는" 절충 구조가 메모리 계층입니다. CPU·GPU 모두 이 계층을 자동 관리.

11.3 장치별로 어떤 메모리를 쓰나

연산장치내부 메모리외부 메모리저장장치 접근
CPU L1/L2/L3 SRAM 캐시 DDR5 (데스크탑/서버) / LPDDR5 (노트북/모바일) NVMe SSD → PCIe로 직접
MCU 내장 SRAM (수 KB~MB) (보통 없음, 통합 칩) 내장 Flash 메모리
GPU (게임용) L1/L2 SRAM GDDR6/GDDR7 (그래픽 카드 위에 직접 부착) CPU 통해 PCIe로 RAM·SSD 접근
GPU (AI용 H100 등) SRAM HBM3/HBM3E/HBM4 (적층 메모리, GPU 다이 옆) CPU 통해 NVMe로
NPU 큰 온칩 SRAM (수 MB) 시스템 LPDDR 공유 (SoC 통합) 없음 (앱 메모리 사용)
TPU SRAM + 큰 HBM HBM (수십~수백 GB) 네트워크 스토리지
ASIC 설계 따라 다름 설계 따라 다름 설계 따라 다름
FPGA BRAM (내부 SRAM 블록) 외부 DDR (옵션) 네트워크/PCIe
왜 AI용 GPU는 HBM을 쓰나?

GPU는 5000+ 코어가 동시에 데이터를 빨아들이는데, 일반 GDDR로는 대역폭이 부족해 코어들이 굶음. HBM은 1024비트 초광폭 버스로 GDDR보다 5~10배 빠른 대역폭을 제공해 코어를 굶기지 않습니다. 다만 비싸서 게임용은 GDDR, AI용은 HBM으로 갈림.

자세한 내용은 → 메모리 스터디 가이드

12. 실제 사용 사례 — 우리 주변의 연산장치들

🏠 스마트폰 1대 안에 들어있는 연산장치

장치역할
CPU (Application Processor, ARM Cortex-X/A)OS·앱·UI 처리
GPU (Mali·Adreno·Apple GPU)화면 렌더링·게임
NPU (Apple Neural Engine·Hexagon)사진 보정·음성 인식·Siri
ISP (Image Signal Processor, ASIC)카메라 센서 원본 → 사진으로 변환
DSP, 모뎀 칩 (ASIC)5G·WiFi·블루투스 신호 처리
보안 칩 (Secure Element, ASIC)지문·Face ID 키 저장·결제
여러 MCU화면 터치·전원 관리·각종 센서

이 모두가 한 SoC(System-on-Chip) 안에 통합되어 있습니다. 예: Apple A18, Snapdragon 8 Gen 4, Samsung Exynos.

🎮 게임용 PC

🤖 AI 데이터센터 (OpenAI, Anthropic 같은 회사)

🚗 자율주행차

⛏️ 비트코인 채굴기

13. 한 줄 요약

전체 요약

모든 연산장치는 결국 "ALU 몇 개를 어떻게 배치했는가"의 차이입니다. CPU는 강력한 ALU 몇 개에 똑똑한 제어 회로를 붙여 뭐든 잘하는 만능 일꾼이고, GPU는 단순한 ALU를 수천 개 늘어놓아 같은 일을 동시에 잘하는 병렬 군대입니다.

NPU·TPU는 행렬 곱셈에만 특화한 좁고 깊은 가속기, ASIC은 한 가지 일만 미친듯이 잘하는 전용 칩, FPGA는 그 회로를 나중에 바꿀 수 있는 유연한 버전, MCU는 작은 CPU에 메모리·I/O를 다 합친 손가락만 한 컴퓨터입니다.

이들은 레지스터 → 캐시 → RAM → SSD로 이어지는 메모리 계층 위에서 동작하고, 각자 알맞은 메모리(SRAM·DDR·GDDR·HBM·LPDDR)를 골라 씁니다. 한 PC·스마트폰 안에도 보통 5~10종류의 연산장치가 협력하며 들어있습니다.

14. 제조사·브랜드 한눈에 — "이 칩은 어디 회사 뭐로 부르나"

각 연산장치를 만드는 주요 회사와 그들의 대표 브랜드·모델명 정리. 매장에서 PC 사양을 볼 때 "Ryzen 7 7700"이 뭔지, 스마트폰에 "Snapdragon"이 박혀 있으면 무슨 칩인지 바로 알 수 있도록 한 표.

14.1 CPU

제조사대표 브랜드 / 모델주 용도
IntelCore i3 / i5 / i7 / i9 / Ultra · Xeon · Pentium · Atom · Celeron데스크탑·노트북·서버 (x86)
AMDRyzen 3 / 5 / 7 / 9 · EPYC (서버) · Threadripper (워크스테이션)데스크탑·서버·게임 PC (x86)
AppleM1 / M2 / M3 / M4 (Pro·Max·Ultra 변형)Mac·iPad (ARM 자체 설계)
QualcommSnapdragon 8 Gen 4 / 8 Elite · Snapdragon X (PC용)안드로이드 스마트폰·Copilot+ PC
SamsungExynos 2400 / 2500갤럭시 시리즈 (일부 지역)
MediaTekDimensity 9300 / 9400중급~플래그십 안드로이드
AWSGraviton 1~4AWS 서버 (ARM, 자체 설계)
AmpereAltra · AltraMax · AmpereOne클라우드 ARM 서버

14.2 MCU

제조사대표 브랜드 / 모델주 용도
STMicroelectronicsSTM32 시리즈 (F0/F4/H7 등)업계 표준 ARM Cortex-M MCU
MicrochipPIC · AVR (Atmel 인수)저가 임베디드·아두이노 (AVR)
NXPLPC · Kinetis · i.MX자동차·산업용
Texas InstrumentsMSP430 · C2000초저전력·모터 제어
EspressifESP32 · ESP8266Wi-Fi/BT 내장 IoT (가성비 갑)
Raspberry Pi FoundationRP2040 · RP2350 (Pico 보드)교육·취미·소형 프로젝트
RenesasRX · RH850 · RA자동차 ECU·산업용
InfineonAURIX (TC3xx) · XMC · PSoC자동차 안전·산업

14.3 GPU

제조사대표 브랜드 / 모델주 용도
NVIDIAGeForce RTX 5070 / 5080 / 5090 (게이밍) · A100 / H100 / H200 / B200 / GB200 (데이터센터) · Jetson (엣지·로봇) · Quadro/RTX A (워크스테이션)게이밍·AI·HPC 시장 80%+ 독점
AMDRadeon RX 7900 / 9070 (게이밍) · Instinct MI300 / MI325 (AI/HPC) · Radeon Pro (워크스테이션)NVIDIA 대안 · CUDA 락인 깨려 시도
IntelArc B580 (게이밍) · Iris Xe (CPU 내장) · Gaudi 3 (AI, Habana 인수)게이밍 시장 신규 진입·AI 도전
AppleApple GPU (M 시리즈에 내장, 별도 모델명 없음)Mac·iPad 자체 그래픽
QualcommAdreno (Snapdragon 내장)안드로이드 모바일 그래픽
ARMMali (라이선스 IP)저가 모바일 SoC에 탑재
SamsungXclipse (AMD RDNA 기반, Exynos 내장)일부 갤럭시 시리즈

14.4 NPU (모바일·엣지 AI)

제조사대표 브랜드 / 모델주 용도
AppleNeural Engine (16~32 코어, M·A 시리즈 내장)iPhone·Mac AI (Siri·사진·번역)
QualcommHexagon NPU · AI Engine (Snapdragon 내장)안드로이드 폰·Copilot+ PC
GoogleTensor SoC의 TPU 코어 · Edge TPU (Coral)Pixel 폰·엣지 디바이스
SamsungSamsung NPU (Exynos 내장)갤럭시 폰
HuaweiDa Vinci NPU (Kirin·Ascend)화웨이 폰·중국 AI 서버
IntelMovidius Myriad · NPU (Meteor/Lunar Lake 내장)엣지 비전·Windows AI PC
AMDRyzen AI NPU (Phoenix·Strix Point 내장, XDNA 아키텍처)Copilot+ PC

14.5 TPU · AI ASIC (데이터센터)

제조사대표 브랜드 / 모델주 용도
GoogleTPU v1~v5e/v5p · TPU Trillium (v6) · TPU Ironwood (v7)Google Cloud 임대만, 자체 AI 인프라
AWSTrainium (학습) · Inferentia (추론)AWS 자체 AI 가속기
MicrosoftMaia 100 · Cobalt (ARM CPU)Azure AI 인프라
MetaMTIA (Meta Training and Inference Accelerator)Facebook·Instagram·WhatsApp 추론
TeslaDojo D1 (학습) · FSD HW4 (차량 추론)자율주행·Optimus 학습
CerebrasWSE-3 (Wafer-Scale Engine, 웨이퍼 1장 통째로 칩)초대형 모델 학습
GroqLPU (Language Processing Unit)초고속 LLM 추론 (토큰/초 압도)
SambaNova · TenstorrentRDU · Grayskull·WormholeAI 학습·추론 (RISC-V 기반)

14.6 FPGA

제조사대표 브랜드 / 모델주 용도
AMD (구 Xilinx)Spartan · Artix · Kintex · Virtex · Versal (ACAP)FPGA 시장 점유 1위 (~60%)
Intel (구 Altera)Cyclone · Arria · Stratix · Agilex2위 (Intel이 2015년 Altera 인수)
Lattice SemiconductoriCE40 · ECP5 · CertusPro저전력·저가 시장 강자
Microchip (구 Microsemi/Actel)PolarFire · IGLOO · SmartFusion저전력·항공우주·군용
Achronix · EfinixSpeedster · Trion · Titanium고성능 틈새·저가 신생

14.7 일상에서 마주치는 ASIC들

ASIC은 "전용 칩"이라 회사마다 자체 이름을 붙입니다. 우리가 흔히 만나는 ASIC들:

분야대표 제조사·제품
비트코인 채굴기Bitmain Antminer S21 · MicroBT WhatsMiner · Canaan AvalonMiner
5G/통신 모뎀Qualcomm Snapdragon X75 · MediaTek M85 · 삼성 Exynos Modem
이어폰·웨어러블 SoCApple H1 · H2 (AirPods) · Qualcomm S5 Sound · Bose proprietary
자동차 ECU·SoCNXP S32 · Renesas R-Car · Infineon AURIX · NVIDIA DRIVE · Tesla FSD · Mobileye EyeQ
스마트 TV·셋톱박스Realtek · Amlogic · MediaTek
네트워크 스위치·라우터Broadcom Tomahawk·Trident · Marvell Prestera · Cisco Silicon One
SSD 컨트롤러Samsung · SK하이닉스 · WD/SanDisk · Phison · Silicon Motion · Marvell
사양표에서 만나는 이름 한 줄 매칭
  • "Ryzen 7 7700X" → AMD의 CPU (Ryzen 시리즈, 7=중상위, 7700X=4세대 Zen4 7나노)
  • "Core i7-13700K" → Intel CPU (Core i 시리즈, i7=상위, 13700K=13세대)
  • "RTX 5090" → NVIDIA GPU (GeForce 게이밍 라인)
  • "H100" / "B200" → NVIDIA 데이터센터 GPU (AI 학습용, HBM 탑재)
  • "Snapdragon 8 Elite" → Qualcomm의 모바일 SoC (CPU+GPU+NPU+모뎀 통합)
  • "M4 Max" → Apple Silicon (Mac CPU+GPU+Neural Engine 통합)
  • "STM32F407" → STMicroelectronics MCU (ARM Cortex-M4 기반)
  • "ESP32-C3" → Espressif Wi-Fi/BT 내장 MCU (RISC-V 코어)

더 알아보면 좋은 키워드

작성일: 2026-05-14
관련 문서: 메모리 스터디 · 반도체 8대 공정