Chapter 8: Memory & I/O Systems | 메모리 계층 구조와 입출력의 세계
💾 Chapter 8: Memory & I/O Systems
메모리 계층 구조, 캐시, 가상 메모리, I/O — Memory Wall을 넘어서
아무리 빠른 프로세서를 설계해도, 데이터를 제때 공급하지 못하면 프로세서는 멈춰 기다릴 수밖에 없습니다. 이 “Memory Wall” 문제는 컴퓨터 아키텍처의 가장 근본적인 도전 과제입니다. Chapter 8은 이를 극복하기 위한 메모리 계층 구조(Memory Hierarchy), 캐시, 가상 메모리, 그리고 I/O 시스템을 다룹니다. 2026년 최신 트렌드로는 AI 데이터센터의 메모리 벽을 허물고 있는 CXL(Compute Express Link) 메모리 패브릭 기술을 함께 살펴봅니다.
🏔️ 1. 메모리 계층 구조
프로세서 속도와 메모리 접근 속도의 격차를 극복하기 위해, 메모리를 계층적으로 배치합니다. 이 구조가 작동하는 근본 원리는 프로그램이 가지는 지역성(Locality)입니다.
~32개, ~0.3ns, 가장 빠름
32~64KB, ~1ns
256KB~32MB, ~5~30ns
16~512GB, ~50~100ns
TB~PB, ~0.1ms(SSD)~10ms(HDD), 가장 큼
↑ 위로 갈수록: 빠르고, 작고, 비쌈 | ↓ 아래로 갈수록: 느리고, 크고, 저렴
⚡ 2. 캐시 (Caches)
캐시는 자주 사용하는 데이터를 프로세서 가까이에 SRAM으로 복사해두는 하드웨어입니다. 캐시의 성능은 AMAT(Average Memory Access Time) 수식으로 평가합니다.
| 파라미터 | 정의 | 전형적 값 |
|---|---|---|
| thit | 캐시 Hit 시 접근 시간 | 1~3 사이클 |
| pmiss | 캐시 Miss 확률 (Miss Rate) | 2~10% |
| tmiss | Miss 시 하위 메모리 접근 페널티 | 50~200 사이클 |
🗺️ 캐시 매핑 방식
32비트 메모리 주소를 Tag | Index | Byte Offset으로 분해하여 캐시 위치를 결정합니다.
🌐 3. 가상 메모리 (Virtual Memory)
가상 메모리는 물리적 DRAM 용량보다 훨씬 큰 메모리 공간을 프로그램에 제공하며, 프로그램 간 메모리 보호(Protection)와 격리(Isolation)를 가능하게 하는 핵심 기술입니다.
CPU가 가상 주소로 데이터 요청 → TLB에서 VA→PA 변환 (TLB Hit) → 변환된 PA로 캐시에서 데이터 검색 (Cache Hit) → 데이터 반환. TLB Miss 시 페이지 테이블 참조, 캐시 Miss 시 메인 메모리 접근, 페이지 폴트(Page Fault) 시 디스크에서 페이지를 메모리로 로드합니다.
🔌 4. 메모리 매핑 I/O
Memory-Mapped I/O는 외부 장치(LED, 센서, UART 등)의 제어 레지스터를 메모리 주소 공간에 매핑하여, 별도의 I/O 명령어 없이 일반 lw/sw 명령어로 장치를 제어하는 방식입니다.
volatile은 컴파일러에게 “이 주소의 값은 하드웨어에 의해 언제든 바뀔 수 있으므로, 절대로 캐시하거나 최적화하지 말고 매번 실제 메모리에 접근하라”고 지시합니다. volatile 없이 I/O 포트를 읽으면, 컴파일러가 이전 읽기 결과를 재사용하여 새 입력을 감지하지 못하는 치명적 버그가 발생할 수 있습니다.
🚀 5. 2026년 산업 동향: CXL 메모리 패브릭
교과서의 메모리 계층 구조(레지스터→캐시→DRAM→디스크)는 2026년 CXL(Compute Express Link) 기술로 인해 근본적으로 재편되고 있습니다. CXL은 기존 계층 사이에 새로운 메모리 티어를 삽입하여, AI 시대의 Memory Wall을 돌파합니다.
CXL은 PCIe 물리 계층 위에서 동작하는 캐시 일관성(Cache-Coherent) 인터커넥트로, 컴퓨트와 메모리를 독립적으로 확장할 수 있게 합니다. 2026년에는 CXL이 실험적 기술에서 데이터센터의 핵심 인프라로 전환되었습니다.
📊 교과서 메모리 계층 → 2026 진화
| 교과서 개념 | 2026 진화 |
|---|---|
| 레지스터 → 캐시 → DRAM → 디스크 (4계층) | 레지스터 → L1/L2/L3 캐시 → HBM (GPU) → DDR5 (CPU) → CXL 메모리 (Far Memory) → NVMe SSD → 클라우드 스토리지 |
| AMAT = thit + pmiss × tmiss | 다단계 캐시/메모리 티어를 재귀적으로 적용. CXL 티어의 지연은 DRAM보다 약간 길지만 SSD보다 수 배 빠름 |
| 고정 DIMM 슬롯 (CPU에 종속) | CXL로 컴퓨트와 메모리 독립 확장. 메모리 풀링으로 Stranded Memory 문제 해결 |
| Memory-Mapped I/O (lw/sw) | PCIe/CXL 기반 MMIO + DMA. NVMe, GPU, AI 가속기 모두 메모리 매핑 방식 사용 |
| 가상 메모리 (4KB 페이지) | Huge Pages(2MB/1GB) + 다단계 TLB + CXL 메모리의 NUMA 노드 관리 |
CXL Type 3 메모리 확장 시장은 2026년 약 18~25억 달러 규모로 추정되며, 2028년까지 160억 달러로 성장할 전망입니다. AI 모델이 기하급수적으로 커지면서 GPU의 HBM 용량만으로는 부족한 상황이 일상화되었고, CXL은 이를 해결하는 핵심 인프라로 자리잡았습니다. 교과서에서 배운 캐시 일관성(Cache Coherence) 원리가 CXL의 작동 기반입니다.
📋 핵심 요약
| 주제 | 핵심 포인트 | 수식 / 키워드 |
|---|---|---|
| 메모리 계층 | 지역성(Temporal/Spatial) 활용. 위=빠름+작음, 아래=느림+큼 | Reg → Cache → DRAM → Disk |
| 캐시 | Direct/N-Way/Fully Assoc. Tag|Index|Offset 주소 분해 | AMAT = thit+pmiss×tmiss |
| 가상 메모리 | VA→PA 변환. Page Table + TLB. 보호 & 격리 | Page Fault → 디스크 접근 |
| Memory-Mapped I/O | I/O 레지스터를 메모리 주소에 매핑. lw/sw로 제어 | volatile 키워드 필수 |
| 2026 트렌드 | CXL 3.1 메모리 패브릭. DDR5 대중화. 메모리 풀링/분리 | 시장 $1.8~2.5B (CXL 2026) |
댓글
댓글 쓰기