DRAM
DRAM(Dynamic Random-Access Memory, 동적 랜덤 접근 메모리)은 컴퓨터 및 전자 기기에서 주기억장치(main memory)로 널리 사용되는 반도체 메모리 기술이다. DRAM은 메모리 셀에 저장된 전하가 시간이 지나면 자연 방전되기 때문에, 일정 간격으로 재충전(refresh)해야 한다. 이러한 특성 때문에 "동적(dynamic)"이라는 이름이 붙었다.
DRAM은 CPU, GPU, 모바일 기기, 서버, AI 가속기 등 다양한 시스템에서 주 메모리로 사용된다. DRAM은 SRAM에 비해 느리지만, 집적도가 높아 더 많은 데이터를 저장할 수 있으며 가격이 저렴하다.
대표적인 DRAM 종류에는 DDR(Desktop/Server용), LPDDR(모바일용), HBM(고대역폭 메모리)이 있다.
DRAM은 다음과 같은 구성 요소로 이루어진다:
- 1개의 트랜지스터 + 1개의 커패시터로 이루어진 매우 간단한 구조
- 커패시터가 전하(charge)를 저장하며, 0/1 값을 표현
- 시간이 지나면 전하가 새기 때문에 주기적 refresh 필요
- Wordline: 특정 행(row)을 선택
- Bitline: 데이터를 읽거나 쓰는 통로
DRAM은 Bank・Row・Column으로 구성되어 있으며, row를 한 번 열면(row open) 해당 row의 데이터 접근이 더 빠르다.
- 높은 집적도 → 대용량 구현 가능
- 가격이 저렴함
- 대부분의 컴퓨터 시스템에서 표준 주기억장치
- 비휘발성 아님 (전원 끄면 데이터 사라짐)
- refresh 필요 → 전력 소모
- SRAM보다 접근 시간이 느림
- On-chip SRAM 대비 latency가 매우 큼
DRAM은 지방성(locality)에 따라 성능 편차가 크다.
Row Buffer Hit
- 같은 Row 내에서 반복 접근 → 빠름
Row Buffer Miss
- 다른 Row로 이동하면 precharge & activate 과정 필요 → 느림
Latency
- DRAM latency는 수십 ns~백 ns로, SRAM(수 ns)과 큰 격차가 있다.
AI Accelerator 구조에서 DRAM은 매우 중요한 역할을 한다.
딥러닝 가속기에서 가장 큰 병목은 출입/메모리 이동 비용이다.
Normalized Energy Cost 예:
- ALU 연산 = 1×
- Register File = 2×
- On-chip SRAM(Buffer) = 6×
- DRAM 접근 = 200×
즉:
딥러닝 연산에서 계산보다 더 비싼 것은 DRAM에서 데이터를 불러오는 비용이다.
- 모델 가중치(Weights), Activation, Intermediate tensor의 대규모 저장 공간
- On-chip SRAM에 올려놓지 못한 데이터를 캐싱하는 역할
- GPU/TPU의 HBM 또한 DRAM의 고성능 버전임
- On-chip SRAM(Activation SRAM, Weight SRAM) 확장
- 데이터 재사용(Data Reuse) 극대화
- Systolic array 구조로 DRAM 왕복 최소화
- HBM (High Bandwidth Memory) 도입
- Memory tiling, blocking, fusion 최적화
| 항목 | DRAM | SRAM |
|---|---|---|
| 구조 | 1T1C (트랜지스터+커패시터) | 6T (6개의 트랜지스터) |
| 속도 | 느림 | 빠름 |
| refresh | 필요함 | 불필요 |
| 집적도 | 높음 | 낮음 |
| 가격 | 저렴함 | 비쌈 |
| 용도 | 주기억장치(DDR, LPDDR, HBM) | Cache, on-chip buffer |
데스크톱/서버 메모리의 표준 규격.
모바일 기기용 저전력 DRAM.
GPU/AI 가속기용 초고대역폭 DRAM. HBM은 칩과 매우 가까운 3D 스택 구조로 배치되어 대역폭을 극대화한다.
- 컴퓨터, 서버, 노트북
- 스마트폰 및 태블릿
- GPU 및 AI 가속기 메모리(HBM)
- 게임 콘솔
- 네트워크 장비
- 임베디드 시스템
- DRAM 아키텍처 기술 문서
- JEDEC DDR/LPDDR/HBM 규격
- AI Accelerator 및 메모리 계층 최적화 관련 학술 논문
