RadarURL
Skip to content
조회 수 8435 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

(1) 기본 원리
 
 

 

■ 지역성의 원리(principle of the locality)
 
 
 - 명령어 또는 데이터를 수행하기 위하여 CPU가 주기억장치를 접근할 때는 프로그램 루프, 서브루틴, 테이블 또는 배열 구   조의 데이터등으로 인하여 인접한 위치에 있는 명령어나 데이터들에 집중되는 경향이 있는데, 이와 같은 특성을 지역성   의 원리라고 한다.
- CPU보다 느린 주기억장치 접근 속도를 높이기 위하여 지역성의 원리를 고려하여 중앙 처리 장치와 주 기억 장치 사이에   작고 빠른 기억 장치를 설치하고 이곳으로 반복적으로 참조될 프로그램 및 데이터의 불록을 옮겨 놓은 후 이곳에서 호출   하여 실행시킴으로써 기억 장치 접근 시간을 단축할 수 있도록 만든 것이 캐시 기억 장치이다. 
            
  com_5_5_1.gif
 [그림]  캐시와 주 기억 장치
 
 
           (2) 기본 동작
 
 
            - 동작 순서
 
 
           ① 중앙 처리 장치가 주 기억 장치로부터 한 워드를 읽으려고 할 때는 먼저 그 워드가 캐시에 있는 지를 검사한다.
 
 
           ② 만약에 있으면 그 워드가 중앙 처리 장치로 전달되고 그렇지 않으면 그 워드가 포함된 한 불록이
 
 
           주 기억 장치로부터 캐시로 읽혀지고 동시에 중앙 처리 장치로 전달된다.
 
 
            - 적중(Hit)
 
 
           중앙 처리 장치가 주 기억 장치를 참조할 때 캐시에서 참조하고자 하는 워드를 찾을 경우
 
 
            - 실패(Miss)
 
 
           원하는 워드를 캐시에서 못 찾을 경우
 
 
            - 적중률(hit ratio)
 
 
           적중률   = (적중의 수) / (주 기억 장치 접근의 총수) = (적중의 수) / (적중의 수 + 실패의 수)
 
 
           보통 0.9 이상의 값을 가지고 있다.
 
 
 
 
     5-5-2  캐시 설계상의 주요 요소들 
 
 


  캐시의 크기
  불록의 크기
  사상 함수


  교체 알고리즘

  기록 동작

1 k ∼ 128 k 워드
4 ∼ 8 워드
직접 사상(direct mapping)
연관 사상(associative mapping)
집합 연관 사상(set associative mapping)
최소 최근 사용(LRU)
선입 선출(FIFO)
최소 사용 빈도(LFU)
랜덤(random)
동시 기록(write through)
후 기록(write back)
단일 기록(write once)


               

 

 

 

 

 

 

 

 

 

 

 

  [표]  캐시 설계상의 주요 요소들
 
 
           (1) 캐시의 크기
 
 
            연구 결과에 의하면 1 k ∼ 128 k 워드가 최적
 
 
           (2) 사상 함수(mapping function)
 
 
            주 기억 장치의 주소를 캐시 기억 장치 내의 적당한 워드로 사상(mapping)하는 방법
 
 
            ① 직접 사상(direct mapping)
 
 
            - 구현하기 가장 간단한 방법
 
 
            - 주 기억 장치의 각 불록은 그 불록에 대해서 정해진 캐시 인덱스에만 저장          
 
 
            - 캐시 기억 장치에 2k개의 워드가 있고 주 기억 장치에 2n개의 워드가 있다면 기억 장치 주소는 n 비트로서
             (n-k) 비트의 태그 필드와 k 비트의 인덱스 필드로 구성            
 
 
            - k 비트의 인덱스 필드가 캐시의 주소로 되고, 캐시의 각 워드도 태그와 데이터로 구성된다.

 
com_5_5_2.gif   
 [그림]  RAM을 사용한 캐시 기억 장치 구성도

             
 
 
 - 주소 버스에 실린 주소 중 태그 필드와 캐시에서 읽은 워드의 태그 필드를 비교하여 같으면 적중(Hit),그렇지 않으면  실패  (Miss)이다.실패일 때는 원하는 워드가 주 기억 장치에서 읽혀져서 새로운 태그를 가지고 캐시에 저장된다.
- 만약 같은 인덱스를 가지고 있지만 태그가 다른 두개 이상의 워드가 반복하여 접근되면 적중률이 상당히 떨어지는 단점
 
 
 
            ② 연관 사상(associative mapping)
 
 
 - 주 기억 장치의 불록이 캐시의 어느 인덱스에도 저장될 수 있는 사상방법
- 주 기억 장치의 주소와 데이터가 캐시에 저장되므로 캐시 워드의 크기는 주기억 장치의 주소 비트 수와 워드당 데이터 비트 수    의  합이 된다.
   연관 사상은 가장 빠르고 가장 융통성 있는 캐시 구조
- 캐시 기억 장치가 연관 기억 장치로 구성되어 있으며, 기억장치의 특정 번지 내용을 참조하고자 한다면 인자 레지스터에   는 주소를 저장하고 키 레지스터는 주소 부분만 비교하도록 하면 된다.


com_5_5_3.gif   
 [그림] 연관 사상


 
 
            ③ 집합 연관 사상(set-associative mapping)
 
 
 - 직접 사상과 연관 사상을 조합
- 인덱스는 같고 태그가 다른 두 개 이상의 워드들을 집합으로 하여 연관 기억 장치에 넣어 놓고 직접 사상과 유사하게 각   워드를 주 기억 장치의 인덱스에 의해서 참조
- 캐시를 구성하는 연관 기억 장치의 각 워드는 태그와 데이터를 가지고 있으며, 캐시의 각 주소는 주 기억 장치 주소의   인덱스에 의해서 선택되고, 캐시 내의 어느 주소가 선택되면 그 주소에 있는 많은 태그들이 한꺼번에 검색된다.


com_5_5_4.gif   
 [그림] 집합 연관 사상 캐시 구성

                     
 
 
           (3) 교체 알고리즘
 
 
 - 캐시 실패(Miss)가 발생하여 원하는 워드를 포함하는 불록을 캐시로 불러 올 때 비어 있는 블록이 없을 경우 교체 대상의 캐시   블록을 선택하는 알고리즘
- 연관 사상 또는 집합 연관 사상 방법에서 적용
 
                   
 
 
 ① 최소 최근 사용(least recently used ; LRU)
  - 캐시 내에서 사용되지 않은 채로 가장 오래 있었던 불록을 교체
② 선입 선출(first-in first-out ; FIFO)
  - 캐시 내에서 가장 오래된 불록을 교체
  - 구현이 용이하지만 특정 상황에서는 불록이 너무 자주 교체되는 단점
③ 최소 사용 빈도(least frequently used ; LFU)
  - 가장 적게 사용된 불록을 교체
④ 랜덤 알고리즘
  - 임의(random)로 선택된 불록을 교체
 
 
 
                  
 
 
           (4) 기록 동작(write policy)
 
 
             - 변경된 캐시의 내용을 주기억장치의 같은 불록에 언제 갱신할 것인가?
 
 
 ① 동시 기록(write through)
- 프로세서가 캐시 불록의 내용을 변경할 때 주 기억 장치에 있는 대응 불록의 내용도 같이 변경
- 데이터의 일관성을 쉽게 보장할 수 있는 장점
- 기억 장치 접근 횟수가 많아짐
② 후 기록(write back)
- 갱신은 캐시에서만 하고, 1 비트의 태그를 이용하여 갱신된 불록을 표시하고, 표시된 불록은 새 불록으로 교체되기   전에 주 기억 장치로 복사
- 주 기억 장치에 대한 기록 동작을 최소화
- 주 기억 장치의 일부분이 무효(invalid)상태에 있으므로 입출력 모듈에 의한 접근은 반드시 캐시를 통해야 한다.

 

 http://nengjung.kit.ac.kr/~yskim/lecture/com_5_5.html

에서 더 보세요
 
 
 

 

출처 : http://k.daum.net/qna/view.html?qid=45BzC

?

List of Articles
번호 제목 글쓴이 날짜 조회 수
119 명령 처리에 사용할 서버 저장 공간이 부족합니다. JaeSoo 2011.07.11 11403
118 "서버 저장소 공간이 부족하여 이 명령을 처리할 수 없습니다.","풀이 비었으므로, 서버가 시스템의 비페이징 풀에서 할당하지 못했습니다.","서버가 지난 60초 동안 작업 항목을 <n>번 할당할 수 없었습니다." JaeSoo 2011.07.12 13069
117 ID 2022 마지막 s 동안 사용 가능한 연결이 n 번 찾으려면 서버가 없습니다,ID 2021 지난 %3초 동안 작업 항목을 %2번 만들려면 서버가 없습니다, ID: 3013 Computer_Name 수 있는 리디렉터가 초과되었습니다. JaeSoo 2011.07.12 15176
116 윈도우 7[Windows 7] 에서 복사 속도 빠르게 하기 JaeSoo 2011.07.15 13885
115 Ubuntu에서 윈도우7 폴더에 접근관련 에러 (cifs) JaeSoo 2011.07.20 10993
114 네트웍 자동끊김 없애기 JaeSoo 2011.07.20 12178
113 실시간으로 웹상에서 간단히 폰트 비교하는 사이트 JaeSoo 2011.07.21 10870
112 윈도우용 MS-Dos 명령어 정리 [간단설명] JaeSoo 2011.07.21 12461
111 한영변환 키 레지스트리 조정 JaeSoo 2011.08.06 16217
110 한영키를 바꾸고 싶어요! JaeSoo 2011.08.06 9288
109 키보드 리매핑하기(레지스트리 변경) JaeSoo 2011.08.06 10863
108 DLNA Media Server 종류와 장단점 분석 JaeSoo 2011.09.11 11104
107 FAT 및 NTFS의 기본 클러스터 크기 JaeSoo 2011.09.17 8217
» 캐시 기억 장치의 원리와 동작 JaeSoo 2011.09.17 8435
105 Cache, Cash? JaeSoo 2011.09.17 6656
104 32비트 운영체제에서 4GB 이상의 램 사용을 위한 램디스크 설치와 활용 JaeSoo 2011.10.04 11251
103 무단복사 금지(오른쪽 마우스 클릭 금지) 해제 방법, 소스보기 기능 JaeSoo 2011.10.07 11192
102 윈도우 인증 A.I & K.J 20110627 & 자동인증소스 10.27 버전 JaeSoo 2011.10.09 37885
101 C:windowsPCHealthErrorRep 폴더관련 JaeSoo 2011.11.14 6110
100 윈도우 7 정품인증과 시디키 JaeSoo 2011.11.19 9280
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 Next
/ 10

PageViews   Today : 3224 Yesterday : 2394 Total : 21716882  /  Counter Status   Today : 818 Yesterday : 1232 Total : 1142960

Edited by JAESOO

sketchbook5, 스케치북5

sketchbook5, 스케치북5

나눔글꼴 설치 안내


이 PC에는 나눔글꼴이 설치되어 있지 않습니다.

이 사이트를 나눔글꼴로 보기 위해서는
나눔글꼴을 설치해야 합니다.

설치 취소