캐시 메모리

ㅅㅇㄱ·2024년 9월 28일

CS

목록 보기
13/19

고속의 기억장치로 캐시를 이용하면 주기억장치에 접근하는 횟수가 줄기에 컴퓨터의 처리 속도 향상

기본동작

  • 캐시 적중
    • CPU가 원하는 데이터를 캐시에서 찾음
  • 캐시 미스
    • CPU가 원하는 데이터를 캐시에서 찾지 못하고 주기억장치로부터 데이터를 읽어옴
  • 적중률
    캐시적중횟수(히트수)CPU에의한메모리참조총횟수\frac {캐시 적중횟수(히트수)}{CPU에 의한 메모리 참조 총 횟수}

주기억장치와 캐시의 조직

캐시의 크기는 주기억장치보다 작기때문에 주기억장치의 블록을 캐시의 라인에 매핑시켜야 함

블록

주기억장치로부터 동시에 인출되는 정보들의 그룹

라인

캐시에서 하나의 주기억장치 블록이 저장되는 장소

태그

라인에 적재된 블록을 구분해주는 정보

사상 방식

  • 주기억장치로부터 캐시메모리로 데이터를 전송하는것
  • 주기억장치 블록이 로딩되는 캐시 라인을 결정함
  • 캐시 적중률에 큰 영향을 끼침
  • 캐시 기억장치의 내부구조를 결정함

직접사상

주기억장치의 블록들이 지정된 어느 한 캐시 라인으로만 적재됨

  • 주기억장치 주소 형태
    • 태그필드 | 라인필드 | 단어필드
    • 단어필드 : w ( w= 주기억장치 블록의 크기 2n2^n의 n)
    • 라인 필드 : l (블록수/블록의 크기)
    • 태그 필드 t (블록수 / 캐시의 라인 수)
  • ex

    • 주기억 장치 주소를 받아 상위 5비트를 분석
    • 5비트 중 라인에 해당하는 중간 3비트를 캐시와 비교
    • 찾은 캐시의 라인에 저장된 태그비트 비교
    • hit일 경우 하위 2비트를 총해 워드 값(8비트)반환
    • miss일 경우 해당 블록(32비트)을 저장

완전연관사상

주기억장치의 블록은 비어있는 어느 캐시라인에도 적재 가능
단, 캐시에서 데이터를 찾을 때 모든 태그를 검색해야함

  • 주기억장치 주소 형태
    • 태그필드 | 단어필드
    • 단어필드 : w (w= 블록의 크기)
    • 태그필드 : t (t= 주기억장치의 블록의 수)
  • ex

    • 주기억장치 주소를 받아 상위 5비트를 분석
    • 캐시 내 모든 라인의 태그값과 비교
    • hit일 경우 하위 2비트를 통해 워드값 리턴
    • miss일 경우 해당 블록을 저장

세트연관사상

직접사상과 완전연관사상의 장점만을 취함
세트수에 따라 2-way , 4-way 연관사상으로 부름

  • 주기억장치 주소 형태
    • 태그필드 | 세트필드 | 단어필드
    • 단어필드 : w (블록의 크기)
    • 세트필드 : s (블록의 수 / 캐시세트의 크기)
    • 태그필드 : t (블록수 / 세트수)
  • ex

    • 주기억장치 주소를 받아 상위 5비트 분석
    • 세트에 해당하는 중간 2비트를 캐시와 비교
    • 찾은 캐시의 태그비트 비교
    • hit일 경우 하위 2비트를 통해 워드값 리턴
    • miss일 경우 해당 블록 저장

0개의 댓글