메모리 계층 구조

개념
메모리 계층 구조(Memory Hierarchy)는 컴퓨터 시스템에서 사용되는 다양한 형태의 기억 장치를 속도·용량·비용의 관점에서 계층적으로 배열한 설계 원칙이다. 가장 빠르고 비싼 장치가 최상위(가장 낮은 계층)에서, 가장 느리고 저렴한 장치가 하위(가장 높은 계층)에서 배치된다. 이 구조는 “작업에 가장 자주 접근되는 데이터는 빠른 메모리에 보관하고, 덜 자주 사용되는 데이터는 느린 대용량 메모리로 옮긴다”는 원칙을 통해 전체 시스템 성능을 최적화한다.

주요 계층

계층 대표적 장치 접근 속도(대략) 용량 특징
1. 레지스터 (CPU 레지스터) 레지스터 파일 수십~수백 사이클 미만 수십~수백 개 가장 빠르고, CPU 내부에 직접 통합
2. 레벨 1 캐시 (L1 Cache) SRAM 기반 캐시 ~1–4 사이클 16 KB ~ 128 KB 코어당 전용, 명령·데이터 분리형(L1i/L1d)
3. 레벨 2 캐시 (L2 Cache) SRAM 기반 캐시 ~4–12 사이클 128 KB ~ 2 MB 코어당 전용 또는 공유
4. 레벨 3 캐시 (L3 Cache) SRAM/Embedded DRAM ~10–30 사이클 2 MB ~ 64 MB 여러 코어가 공유, 대역폭·지연 균형
5. 주 메모리 (Main Memory) DRAM (DDR5·LPDDR5 등) ~70–150 사이클 수 GB ~ 수십 GB 비용·용량 대비 속도는 낮음
6. 가상 메모리 (Secondary Storage) SSD, HDD, NVM 수십 µs ~ 수 ms TB ~ PB 페이지 교체·스와핑을 통해 확장

작동 원리

  1. 지역성 원리

    • 시간적 지역성: 최근에 접근한 데이터는 곧 다시 접근될 확률이 높다.
    • 공간적 지역성: 인접한 주소에 위치한 데이터도 곧 사용될 가능성이 크다.
      메모리 계층 구조는 이러한 지역성을 활용해, 데이터가 상위(빠른) 캐시에서 히트하면 하위(느린) 메모리 접근을 회피한다.
  2. 캐시 정책

    • 쓰기 정책: Write‑through / Write‑back
    • 교체 정책: LRU, PLRU, Random, LFU 등
    • 연관성: Direct‑mapped, Set‑associative, Fully‑associative
  3. 메모리 관리 유닛(MMU)
    가상 주소를 물리 주소로 변환하고 페이지 테이블을 통해 주 메모리와 보조 저장장치 간의 페이지 교체를 담당한다. TLB(Translation Lookaside Buffer)는 가상‑물리 주소 변환을 캐시한다.

장점·단점

장점 단점
• 평균 메모리 접근 시간 감소 → 전체 시스템 성능 향상 • 설계·검증 복잡도 증가
• 비용 효율적인 확장: 고속·저용량 장치를 소량, 저속·대용량 장치를 대량 사용 • 캐시 일관성(Coherence) 문제(특히 다중 코어·다중 소켓)
• 전력 효율성: 고속 메모리는 필요 시에만 활성화 • 캐시 미스 시 페널티(스톨) 발생
• 메모리 병목 현상 완화 • 복잡한 메모리 정책(프리페치, 쓰기 버퍼 등) 관리 필요

역사·발전

  • 1960‑1970년대: 최초의 캐시 메모리(IBM 360/91 등) 도입, 레지스터와 주 메모리 사이에 1‑2KB SRAM 캐시가 배치.
  • 1980‑1990년대: 멀티레벨 캐시(L1, L2) 등장, 파이프라인·슈퍼스칼라 아키텍처와 결합.
  • 2000년대: L3 캐시와 고대역폭 인터커넥트(예: Intel QuickPath, AMD HyperTransport) 도입, 메모리 컨트롤러가 CPU에 통합.
  • 2010년대: 비휘발성 메모리(NVM, 3D XPoint)와 하이브리드 메모리 계층 제시, 메모리‑버스와 PCIe·NVMe 기반 고속 스토리지가 “느린” 계층에 포함.
  • 2020년대: 메모리·컴퓨팅 통합(Processing‑in‑Memory, Near‑Memory Compute) 및 AI 가속기에 맞춘 대규모 온칩 캐시 설계가 활발히 연구되고 있다.

관련 용어

  • 캐시 일관성 프로토콜: MESI, MOESI 등, 다중 코어 간 캐시 데이터 일관성을 유지.
  • 메모리 밴드위스: 초당 전송 가능한 데이터 양, 계층마다 차이가 크다.
  • 페이지 폴트(Page Fault): 가상 메모리 페이지가 주 메모리에 없을 때 발생, 보조 저장장치에서 페이지를 로드하는 과정.
  • 프리페치(Prefetch): 미래에 사용할 데이터를 미리 상위 캐시로 가져와 캐시 미스 감소.

참고문헌

  1. Hennessy, J. L., & Patterson, D. A. Computer Architecture: A Quantitative Approach, 6th ed., Morgan Kaufmann, 2017.
  2. Sohi, G., et al., “Cache Coherence Protocols: A Critical Review”, IEEE Computer, vol. 27, no. 5, 1994.
  3. Kim, H., & Kim, J. “Memory Hierarchy Design for AI Accelerators”, Proceedings of the 2023 International Symposium on Computer Architecture, 2023.

메모리 계층 구조는 현대 컴퓨팅 환경에서 성능, 비용, 전력 효율성을 동시에 만족시키는 핵심 설계 개념이며, 앞으로도 새로운 기억 소자와 컴퓨팅 패러다임에 따라 지속적으로 진화할 전망이다.

둘러보기

더 찾아볼 만한 주제