본문 바로가기
CS/컴퓨터구조

[Computer Architecture] 캐시 메모리 (Cache Memory)

by 채채씨 2022. 3. 24.
728x90
반응형

캐시 메모리

  • 빠른 중앙처리장치(CPU)와 느린 주기억장치의 속도 차이로 인한 병목현상을 줄이기 위해 사용하는 메모리이다.
  • 중앙처리장치가 주기억장치에서 데이터를 가져올 때, 자주 사용하는 중요한 데이터는 캐시 메모리에 저장한다.
  • 중앙처리장치는 캐시 메모리에서 필요한 데이터를 먼저 탐색한 후, 없으면 주기억장치에서 가져온다.
  • 캐시 메모리는 속도가 빠르지만 용량이 적고 비싸다. (보통 DRAM은 주기억장치, SRAM은 캐시메모리로 사용됨)

 

Cache Hit & Cache Miss

CPU가 캐시 메모리에서 원하는 데이터를 찾으면 Cache Hit(적중), 없어서 주기억장치에서 가져오면 Cache Miss(실패)라고 한다.

  • Cache Miss 3가지
    • Cold Miss : 최초로 데이터에 접근할 때 캐시 메모리가 비어있어서 발생하는 문제
    • Conflict Miss : 여러개의 데이터를 캐시 메모리에 저장할 때, 같은 주소로 할당되어 발생하는 문제
    • Capacity Miss : 캐시 메모리의 공간 부족 문제
  • 캐시 적중률
    • 필요한 데이터가 캐시 메모리에서 있을 확률을 적중률(hit ratio)라고 하며, 이 적중률에 의해 캐시 메모리의 성능이 결정된다.
      • 캐시 메모리는 보통 2~3개 사용되고 L1, L2, L3과 같이 레벨이 나누어져있다. L1은 용량이 제일 적지만 가장 빠르다. L1부터 찾고 없으면 L2, L3로 넘어간다.

 

참조 지역성의 원리

참조 지역성이란 단기간 동안 주소 공간의 일부만 참조하는 경향을 말하며, 이를 활용하여 캐시 적중률을 높인다. 캐시 메모리에 저장할 때 해당 데이터 뿐만 아니라 옆 주소의 데이터도 가져와서 대비하는 것이다. 경향성이므로 항상 높은 적중률을 보장하지 않는다.

  • 시간적 지역성(temporal locality) : 한 번 참조한 데이터는 이후 다시 참조할 가능성이 높다.
  • 공간적 지역성(spatial locality) : 참조한 데이터 근처에 있는 데이터는 이후 참조할 가능성이 높다.

 

캐시 메모리 동작 원리

캐시 메모리는 데이터 메모리와 태그 메모리가 있으며, CPU가 요청한 데이터를 찾아야함

 

  • Direct Mapped Cache
  • Fully Associative Cache
  • Set Associative Cache

 


 

reference

728x90
반응형

댓글