캐시 메모리

Seon Kang choi·2021년 10월 19일
0

캐시 메모리

  • 주기억장치에서 자주 사용하는 프로그램과 데이터를 자장해두어 속도를 빠르게 하는 메모리
    • 캐시 메모리와 주기억장치 사이에서 정보를 옮기는 것을 매핑이라고 한다.
      • 매핑의 3가지
        • 직접매핑 (Direct Mapping), 연관매핑 (Associate Mapping), 집합 연관 매핑 (Set Associate Mapping)
  • 속도가 빠른 장치와 느린 장치간의 속도 차이인 병목현상을 줄이기 위한 메모리
    • CPU가 어떤 데이터를 원하는지 에측할 수 있어야 한다.
    • CPU가 이후에 참조할 필요 있는 정보가 어느 정도 들어있느냐에 따라 캐새의 성능이 좌우된다.
  • 주기억장치와 CPU사이에 위치
  • 메모리에서 가장 빠른 소자이며, 처리속도가 CPU와 비슷하다.
  • 캐시메모리를 사용하면 주기억장치에 접근 횟수가 줄어 처리속도가 향상된다.

캐시의 지역성

  • 캐시가 효율적으로 동작할려면, 적중율를 극대화 시켜야 한다.
  • 저장할 데이터가 지역성을 가져야 한다.
  • 지역성이란, 데이터 접근이 시간적, 혹은 공간적으로 가깝게 일어나는 것
  • 즉 지역성이란, 기억장치 내의 정보를 균일하게 Access하는 것이 아닌 어느 한 수간에 특정 부분을 집중적으로 참조하는 특성이다.

지역성의 종류
1. 시간적 지역성

  • 특정 데이터에 한번 접급하면 가까운 미래에 한번 더 접근할 가능성이 높다.
  • 메로리 상의 같은 주소에 여러 차례 읽기 쓰기를 수행할 경우
  1. 공간적 지역성
  • 특정 데이터와 가까운 주소가 순서대로 접근되었을 경우
  • CPU 캐시나 디스크 캐시의 경우 한 메모리 주소에 접근할 때 그 주소뿐 아니라 해당 블록 전부 캐시에 가져오게 된다.
  • 메모리 주소를 오름차순이나 내림차순으로 접근한다면 캐시의 효율성이 크게 향상된다.

캐시 메모리의 매핑 프로세스
주기억장치로부터 캐시 메모리로 데이터를 전송하는 방법

  • Direct Mapping
    • 주기억장치의 블록들이 지정된 한 개의 캐시 라인으로 사상될 수 있는 매핑 방법
    • 간단하고 구현하는 비용이 적지만 적중률이 낮아질 수 있다.
  • Associative Mapping
    • Direct Mapping의 단점을 보완
    • 모든 태그들을 병렬로 검사하기 때문에 복잡하고 비용이 높다. 거의 사용하지 않는다.
  • Set Associative Mapping
    • Direct Mapping과 Associative Mapping 장점만 취한 방식
profile
유쾌한 개발 생활~

0개의 댓글