토픽 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, 메모리 채널, 뱅크, 대역폭, 메모리 컨트롤러