본문 바로가기
CS

[컴퓨터구조] 캐시 메모리 사상(Mapping, 매핑) 방식: 직접사상, 연관사상, 집합 연관사상

by jangThang 2023. 7. 20.
반응형

 캐시 메모리도 파일 시스템의 inode처럼 인덱싱해서 데이터를 불러옵니다. 이러한 매핑 방식에는 직접사상, 연관사상, 집합 연관사상이 있으며 각각 자세히 알아봅니다.

 

[ Contents ]

     

     

    1. 캐시 메모리

    CPU가 최근 사용한 데이터를 임시 저장하는 버퍼 형태의 고속 기억장치

     

     캐시 메모리는 CPU(레지스터)와 주기억장치 중간에 위치하는 고속의 버퍼 메모리입니다. CPU는 캐시 - 주기억장치 - 보조기억장치 순으로 데이터를 탐색하며, 자주 찾는 데이터를 캐시에 (임시)저장해둡니다. 

     이때 데이터를 캐시에 저장해두는 방식을 '사상(Mapping)'이라고 합니다. CPU가 캐시에 해당 데이터가 있는지 판별하고 빠르게 찾을 수 있도록 아래와 같은 매핑 방식을 사용합니다.

     

     

    2. 직접 사상 (Direct Mapping)

    1:M 방식으로 캐시 슬롯과 데이터를 지정된 규칙으로 분할해서 연결하는 방식

    직접 사상 (Direct Mapping)

     일련의 규칙대로 캐시와 주 메모리가 매핑되는 방식입니다. 1:M 방식으로 매핑되며 주로 modulo 연산을 이용합니다.

     [메모리 블록 주소] % [캐시 블록 개수]로 나눈 나머지를 토대로 각 캐시 슬롯에 매핑하며, 매핑 절차가 단순하고 신속합니다.

     하지만 예기치 않게 동일한 나머지를 갖는 메모리 블록들을 자주 이용한다면, 캐시 교체 및 미스가 많이 일어날 수 있습니다.

     

    태그 블록 오프셋
    1 2 5

     tag는 캐시 동기화 시 갱신여부에 사용하며, 블록은 순번(위치), 오프셋은 블록의 주소를 나타냅니다.

     나머지를 이용해서, 블록 순번(번호)대로 캐시를 매핑한다고만 알아두면 될 듯하네요. (깊게 알면 어렵습니다.)

     

     

     

    3. 연관 사상 (Associate Mapping)

    1:M 방식으로 캐시 슬롯과 데이터를 자유롭게 연결하는 방식

     

    연관 사상(Associate Mapping)

    태그 오프셋
    3 5

     

     정해진 매핑 규칙이나 위치 없이, 자유롭게 캐시 슬롯에 매핑하고 적재하는 방식입니다.

     H/W 구조가 복잡하고 구현 비용이 비쌉니다.

     

     

    4. 집합 연관사상 (Set Associate Mapping)

    M:1방식으로 캐시 슬롯을 집합으로 묶어서 데이터와 연결하는 방식

    태그 오프셋
    2 1 5

     

     직접 사상과 연관 사상의 장점을 수용한 방식입니다.

     직접 사상처럼 Set로 위치를 지정하되, Set 내에서는 연관 사상처럼 자유롭게 연결할 수 있습니다.

     

     

    star가 되고나서 Tistory

    반응형

    댓글