Learning
토픽 43 / 111·메모리 계층 (Memory Hierarchy)

메모리 인터리빙 (Memory Interleaving)

메모리 인터리빙 (Memory Interleaving)

연속된 메모리 주소를 여러 메모리 뱅크나 채널에 분산 배치하여 동시 접근을 가능하게 하고 메모리 대역폭을 향상시키는 기법

목적: 메모리 대역폭 증가, 뱅크 충돌 감소, 병렬 접근, 성능 향상

특징: 주소 분산, 병렬 접근, 뱅크/채널 단위, 인터리빙 팩터

인터리빙 방식

  • 하위 비트 인터리빙(Low-order): 연속 주소가 다른 뱅크에 분산, 순차 접근 최적화
  • 상위 비트 인터리빙(High-order): 큰 블록 단위로 뱅크 할당, 지역성 유지

Bank Interleaving: DRAM 내부 뱅크 간 인터리빙, 뱅크 충돌 감소, 행 버퍼 활용

Channel Interleaving: 듀얼/쿼드 채널 간 인터리빙, 대역폭 2배/4배

Rank Interleaving: DIMM 내 랭크 간 인터리빙, 추가 병렬성

인터리빙 팩터: 2-way, 4-way, 8-way 등, 높을수록 병렬성 증가

예시(4-way 하위 인터리빙)

  • 주소 0, 4, 8, 12... → 뱅크 0
  • 주소 1, 5, 9, 13... → 뱅크 1
  • 주소 2, 6, 10, 14... → 뱅크 2
  • 주소 3, 7, 11, 15... → 뱅크 3

장점: 대역폭 향상, 뱅크 충돌 감소, 순차 접근 최적화

단점: 복잡한 주소 계산, 메모리 구성 제약, 비균일 접근 시 효과 감소

적용사례: 듀얼/쿼드 채널 메모리(PC), 서버 메모리, DRAM 내부 뱅크

비교: 인터리빙(병렬/대역폭) vs 비인터리빙(단순/지역성)

연관: DRAM, 메모리 채널, 뱅크, 대역폭, 메모리 컨트롤러