Presentation is loading. Please wait.

Presentation is loading. Please wait.

3장. 컴퓨터의 기억장치 학번 :20501033 이름 : 김현화.

Similar presentations


Presentation on theme: "3장. 컴퓨터의 기억장치 학번 :20501033 이름 : 김현화."— Presentation transcript:

1 3장. 컴퓨터의 기억장치 학번 : 이름 : 김현화

2 차 례 3.1 기억장치의 개념 3.2 주기억 장치 3.3 보조 기억 장치 3.4 가상 기억 장치 3.5 고속 기억 장치

3 3.1 기억 장치의 개념 ※기억장치 평가의 3요소 3.1.1 기억 장치의 계층 -속도(Speed) -용량(Capacity)
레지스터 CPU내의 임시기억장소로 CPU와 같은 속도를 내는 기억장치 캐쉬 기억장치 저용량이며 접근 시간이 아주 빠른 버퍼 기억장치 (CPU가 주기억장치에 접근할때의 속도 차이를 줄여줌) 주기억장치 RAM과 ROM 두가지 보조기억장치 고용량이며 단위 비트당 저가격 ※기억장치 평가의 3요소 -속도(Speed) -용량(Capacity) -가격(Cost)

4 3.1 기억 장치의 개념 3.1.2 기억 장치의 성능 4 8 11 10 9 7 6 5 3 2 1 종 류 내 용 접근시간
종 류 내 용 접근시간 기억 장치의 내용을 검색하는 시간 기억용량 데이터를 저장할 수 있는 크기 비트가격 단위 비트에 대한 가격 접근방법 기억 장치에 있는 정보에 접근하는 방법 ◆ 임의접근방법 - 무작위로 원하는 위치에 접근하는 방법 ◆ 순서접근방법 - 처음 위치부터 순차적으로 워드 주소 4 8 바이트 주소 <기억 장치의 주소 지정 형태> 11 10 9 7 6 5 3 2 1 ◆ 워드주소지정방법 - 0,4,8번을 접근 하였을때 0~3,4~7,8~11번지 내용이 워드 단위로 묶어서 데이터를 전송하는 방법 ◆ 바이트주소지정방법 -한 바이트씩 각각의 주소(0~11)를 지정하여 데이터를 전송하기 위한 방식

5 3.1 기억 장치의 개념 n = log2W 3.1.2 기억 장치의 성능 버 퍼 W = 2의 지수값 즉 W=2 주소디코더
<임의접근방식> 주소 디코더 1 2 …………………w …………. 2 B n 주소 데이터 n = log2W W = 2의 지수값 즉 W=2 주소디코더 = n X W n <B비트 X W워드 형태의 기억 장치 구성>

6 3.1 기억 장치의 개념 3.1.3 기억 장치의 특성 기억장치의 유형
파괴성 기억장치 : 기억내용을 읽었을 때 기억내용을 상실되는 것 ex) 자기코어 정보 판독 비파괴성 기억장치 : 기억내용을 읽은 후에도 기억내용에 변화가 없는 것 기억장치의 유형 동적 기억장치 : 주기적으로 재충전이 필요한 것 시간 흐름 정적 기억장치 : 전원이 공급되는 동안은 변화하지 않은 것 휘발성 기억장치 : 전원 공급이 중단되면 기억된 내용이 소멸되는 것 ex) 반도체 소자에 의한 회로, 지연선 기억장치 등 전원 공급 비휘발성 기억장치 : 전원 공급이 중단되더라도 기억되어 있던 내용에 변화가 없는 것 ex) ROM, 자기디스크, 자기드럼, 자기테이프 등

7 3.2 주기억장치 3.2.1 RAM과 ROM 주기억장치는 cpu가 직접 사용할 수 있는 정보를 기억시켜 놓는 기억장치이다.
- 수행 중인 프로그램 기억장소 - 수행 중인 프로그램이 사용하는 데이터 기억장소 - 수행 중인 프로그램이 사용할 임시 기억 장소 - 보조 기억 장치를 위한 버퍼 3.2.1 RAM과 ROM

8 3.2 주기억장치 3.2.1 RAM과 ROM 기억 장치 ROM RAM < 반도체 기억 장치의 분류 >
MASK ROM PROM EPROM EEPROM SRAM DRAM SDRAM RDRAM RDRAM < 반도체 기억 장치의 분류 > ◆ RAM (Random Access Memory) ▷ 프로그램 실행 중에 CPU가 읽고 쓰는 데이터 혹은 명령들을 보관하기 위해 사용 ▷ 전원이 중단되면 기억되어 있던 내용이 지워지는 휘발성 메모리 ◆ ROM (Read Only Memory) ▷ 판독 전용 메모리 ▷ CPU가 판독은 하지만 변경하지 않는 프로그램을 보관하는데 사용 ▷ 전원을 중단되더라도 내용이 남아 있는 비휘발성 메모리

9 3.2 주기억장치 3.2.1 RAM과 ROM 구 분 정적 램(SRAM) 동 적 램(DRAM) 약어
Static Random Access Memory Dynamic Random Access Memory 특징 플립플롭 전원이 공급되는 동안 정보유지 콘덴서 일정시간이 지나면 정보 소멸 재충전회로 필요없다 소비전력 많다 적다 집적도 낮다(저밀도) 높다(고밀도) 가격 비싸다 저렴 접근속도 빠르다 느리다 용도 캐쉬 메모리 주기억 장치

10 3.2 주기억장치 SDR-SDRAM 3.2.1 RAM과 ROM DDR-SDRAM RDRAM DDR2 RAM

11 3.2 주기억장치 3.2.1 RAM과 ROM 종 류 내 용 응용분야 MASK ROM
내 용 응용분야 MASK ROM 생산시 미리 쓰여져서 나오는 것으로 한번 쓰면 지울 수가 없음 프로그램 저장용, 터미널 및 프린터의 문자 기억용 PROM (Programmable ROM) 프로그램 가능한 ROM으로 데이터가사용자에 의해 한번 쓸 수 있음 소형 컴퓨터의 마이크로 프로그램 제어용, 가정용품 제어용 EPROM (Erasable PROM) 전기적으로 읽고 쓸 수도 있음 쓰기 전에 자외선을 이용하여 저장 되어 있는 내용을 지워야 함 소프트웨어 개발 및 연구용 EEPROM (Electrically EPROM) 전기적으로 지울 수 있는 PROM 쓰기 위해 먼저 지울 필요 없다는 편리함을 가짐 프로그램 및 데이터 교정용 Flash 메모리 일종의 비휘발성 기억장치 휴대형 컴퓨터의 하드 디스크 대용 또는 보충용

12 3.2 주기억장치 16 ⅹ4 3.2.2 RAM 칩의 구조 I1 I2 I3 I4 a1 a2 a3 a4 O1 O2 O3 O4 CS
R/W < 16 ⅹ 4로 구성된 RAM 칩의 모형 > ◇ 설명 16 = 4비트 데이터RAM 16개를 의미 4 = RAM 한번 접근하여 얻을 수 있는 데이터의 비트수가 4비트를 의미 ◇단어당 m비트를 얻기 위한 칩의 수 = [m/q] ◇ 단어 수 n을 얻기 위한 칩의 수 = [n/p] ◇ 기억 장치를 만드는데 필요한 칩의 수 = [m/q X n/p] ◆ 사용할 칩의 구성 형태가 결정되고, 단어의 수를 고려하지 않은 상태에서 최소로 필요한 칩의 수는 칩의 수 = (기억 장치의 단어당 비트 수(N) / (칩의 단어당 비트 수) (예) 8  8 RAM 칩으로 8  16 기억 장치를 구성할 경우 필요한 칩의 수  16/8 = 2 개

13 3.2 주기억장치 3.2.3-4 주기억장치의 구성 및 동작 기억 장치 제어 M A R B 기 억 소 자 배 열 버 퍼 주 선
주기억장치 RE WE CS R/W 8 판독 기록 출력 자료 입력 자료 주소 10 A0 A9 D0 D7 1024 ⅹ 8 < 주기억장치의 구성 요소 > ◆ 내부에서 읽기 제어 순서 - MAR에 읽고자 하는 단어의 주소를 옮긴다 - 읽기/쓰기 제어 신호( ) 단자에 읽기 신호를 가한다 - MBR에 나타난 데이터를 읽어 간다 R/W ◆ 외부에서 기억 제어 순서 - MAR에 쓰고자 하는 단어의 주소를 옮긴다 - MBR에 기억시키려는 데이터를 옮긴다 - 읽기/쓰기 제어 신호( ) 단자에 쓰기 신호를 가한다 R/W

14 3.3 보조기억장치 3.3.1 자기테이프 가격이 저렴하고 대용량,보관 및 운반이 용이. 순차 접근 방식을 사용.
접근시간이 느리고, 레코드 수정이 쉽지 않다. 데이터 백업용. 논리레코드(Logical Record) 물리레코드(Phisical Record) IRG ( Inter Record Gap ) : 레코드와 레코드 사이의 공백 IBG ( Inter Block Gap ) : 블록과 블록 사이의 공백

15 3.3 보조기억장치 3.3.1 자기테이프 레코드 수 = 테이프 길이 / ( IBG + 1 레코드 길이 / 기록 밀도)
Ex 1) 자기테이프 길이가 2400피트이고 기록 밀도가 6250BPI, IBG가 0.3인치, 한 레코드의 길이가 200Byte 일 때 블록화 되지 않은 데이터를 기록할 경우 기록 가능한 레코드 수는? -> 2400 * 12 /( / 6250) *1 = 86,746레코드 레코드 기록 소요 시간= { IBG통과시간 + (1 레코드 길이/데이터 전송률)}* 읽고 쓰는 레코드 수 Ex 2)자기 테이프 장치에서 데이터 전송률이 780kb이고, IBG를 통과하는 시간이 2.4ms가 소유되며, 한 레코드의 길이가 100 Byte인 것을 1000개 읽고 쓰는데 소요되는 시간은? -> {2.4 + (100/ * 1000)} * 1000 = 2,530ms

16 3.3 보조기억장치 3.3.2 자기 디스크 정 의 레코드판과 유사한 원판(disk)에 자성체를 입히고, 원판의 정해진 궤도를 따라 자기헤드가 이동하면서 자료를 기록하거나 판독하는 컴퓨터 보조기억장치. 자기 디스크의 장단점 장점 순차처리와 랜덤처리가 가능 / 레코드의 추가,삭제가 용이 레코드의 위치에 관계없이 접근시간이 비슷하며 짧다 단점 주소 계산시간이 필요 / 레코드가 연속공간에 저장되지 않으므로 공간효율이 떨어짐 디스크 데이터 접근 시간(Access Time) : 탐색시간 + 회전지연시간 + 전송시간 기억 장치에 데이터를 기록하거나 판독하는데 걸리는 시간 탐색시간(Seek Time) : 트렉를 찾아가는데 걸리는 시간 회전지연시간(Rotational Delay Time) : 섹터를 찾아가는데 걸리는 시간 전송시간(Transmission Time)

17 3.3 보조기억장치 3.3.2 자기디스크 섹터 트랙 ◆ 대형 컴퓨터에서 사용 ◆ 자기 성분을 이용하여 컴퓨터에서
생성되는 데이터를 반영구적으로 저장할 목적으로 사용되는 기억장치 ◆ 트랙 : 동심원를 이루고 있는 각 원형의 기록 위치 ◆ 실린더 : 중심축으로부터 같은 거리에 있는 트랙들의 모임 ◆ 섹터 : 한 트랙에서 주소가 지정된 최소 단위 ◆클러스터 : 데이터를 저장하기 위한 단위 ◆몇 개의 섹터가 하나의클러스터로 취급 ◆부트섹터 : 0번 트랙의 0번 섹터 ◆TPI(Track Per Inch) : 기록밀도를 나타내는 단위

18 3.3 보조기억장치 3.3.3 기타 보조기억장치 플래시 메모리 ① 연결방식 : usb
플로피디스크 ① 플로피 디스켓의 크기 : 3.5인치, 5.25인치 ② 플로피 디스켓의 용량 : 1.44MB(3.5인치) 플래시 메모리 ① 연결방식 : usb ② 용량 : 16MB, 32MB, 64MB, 128MB, 256MB, 512MB, 기타 ③ 용도 : 휴대용 저장장치, 디지털카메라 메모리 ④ 특징 : 별도의 전원장치가 필요없다. 광디스크 : 빛을 이용하여 정보를 기록, 읽기하는 기억장치 ① 종류 : CD-R, CD-RW, DVD ② 특징 : 안정성이 높다. 대량의 데이터를 저장

19 3.4 가상기억장치 ※ 가상 기억 장치 정의 ◆ 가상 (Virtual)이란?
하나 밖에 없는 컴퓨터 시스템 내의 자원들을 여러 개의 자원을 갖고 있는 것처럼 착각하게 하는 기술 ◆ 응용분야 - 가상 출력 장치 가상 처리기 - 가상 머신 가상 서버 - 가상 네트워크등 ◆ 가상 기억 장치 - CPU가 실행을 위해 요구하는 프로세스의 정보가 항상 주기억 장소에 있는 것처럼 착각 하게 하는 기술 ◆ 주소는 항상 자신의 상대적인 프로그램 주소로 유지해야 한다. 프로그램 상의 가상주소 물리적인 주기억 절대주소 주소 변환 함수 (F)

20 3.4 가상기억장치 ※ 가상 기억 장치 정의 ◆ 가상기억장치를 사용하는 이유 ◆ 가상 기억 장치가 개발된 이유
- 사용자가 기억 장소를 할당하는 불편을 없앤다. 프로그램과 프로그램 실행 중에 사용하는 기억 장치의 구성이나 용량이 무관하도록 한다. 다수의 사용자로 하여금 기억 공간의 효율적인 공유를 가능케 하며 최대의 접근율을 얻을 수 있도록 한다. ◆ 가상 기억 장치가 개발된 이유 - 프로세서를 기억 장소에 산재 배당시키기 위해 - 오버레이 문제를 해결하기 위해 - 요구페이지를 이용한 주기억장치 이용률 향상 - 기억 장소 단편화를 제거하기 위하여 - 페이지의 공유를 위해

21 3.4 가상기억장치 ※ 페이징(paging)의 장단점 ◆ 장 점 ◆ 단 점
◆ 장 점 - 동적 주소 변환을 이용하여 다중 프로그래밍 효과 증진 (CPU가 요구하는 페이지만 메모리에 유지함으로써 주기억 장소의 낭비를 최소화) - 큰 가상 기억 장치 제공 - CPU 이용률을 증가 - 자동 오버레이 지원 - 외부 단편화 방지(fragmentation) - 페이지의 공유 - 재배치기가 불필요 ◆ 단 점 - 주소변환에 따른 하드웨어 비용상승과 CPU 오버헤드 증가 - 세그멘테이션에 비해 효율적인 논리 주소공간 관리 나쁨 - 내부 단편화 발생

22 3.4 가상기억장치 3.4.1 페이징 기법 페이지 맵 테이블가상 주소 형식
가상주소 v = (p, d) p : 명령이나 자료가 속해 있는 페이지 번호 d : p의 시작점에서 떨어져 있는 거리 (변위) 프로세스가 요구하는 페이지가 주기억 장소의 어느 페이지 프레임에 속하는지 또는 디스크에 존재하는지를 알려주는 자료구조 프로세스 실행 시에 제일 먼저 페이지 맵 테이블을 탐색 페이지 프레임의 위치(p)를 찾고 해당 페이지 프레임 내에서 어는 부분(d)이 실제 실행할 명령이나 자료인지를 구한다. 페이지가 주기억 장치에 있으면 페이지의 위치를 맵 테이블에 저장 페이지가 디스크에 있을 경우 디스크 상의 페이지 위치를 맵 테이블에 저장 상태비트 ( 0 / 1 ) 디스크 주소 페이지 프레임 번호 < 페이지 맵 테이블의 구성 항목들 >

23 3.4 가상기억장치 3.4.1 페이징 기법 <동적 주소 변환과정>
PMT의 시작주소 ( b ) p d CPU p’ b+p 페이지번호 변위 실제 주기억 장소 내의 주소 페이지 프레임 번호 PMT 가상주소 V = ( p , d ) : 페이지 매핑 테이블 초기점 레지스터 b 실행되는 프로세스는 가상 주소 v=(p,d)를 참조 프로세스 실행 전 OS는 문맥교환 시에 주기억 장치 내의 페이지 매핑 테이블(PMT) 주소를 PMT 초기점 레지스터에 적재 PMT 시작주소 = b 페이지 번호 = p PMT 내용을 가리키는 주기억 장소 생성 = b+p 페이지 프레임 p’ = 디스크 상의 페이지 p 실제 주기억 장소 = p’ + d

24 3.4 가상기억장치 3.4.1 페이징 기법 <예> PMT 초기 주소값 = 0 가상 주소의 페이지 번호 = 2
( 0 ) 1000 1 2 400 페이지 프레임주소 상태 . 1400 실제주소 PMT 가상주소 V=(p,d) 주기억 장소 3 <예> PMT 초기 주소값 = 0 가상 주소의 페이지 번호 = 2 PMT 참조 주소 = 0 + 2 참조 프레임의 주소 = 1000 실제 참조하는 메모리 주소 = (변위)

25 3.4 가상기억장치 3.4.1 페이징 기법 <예> - 가상 주소 2 에 대해서
4개의 워드 / n개의 페이지로 구성된 디스크 페이지 번호(p) = 가상주소(v) / 페이지 크기(s) 페이지 내의 변위(d) = 가상주소(v) % 페이지 크기(s) 실제 주기억 장소의 주소 = 프레임 시작 주소(PMT(p))*페이지크기(s) + 프레임내의변위(d) - 가상 주소 2 에 대해서 페이지 번호 (p) : 2 / 4 = 0 페이지 내의 변위 (d) : 2 % 4 = 2 2번지는 페이지 0에 속하므로 PMT(0) = 2 - 실제 주소 PMT(0) * 페이지 크기(s) + 페이지 프레임 내 변위(d)  2 * = 10번지 (실제 주소)

26 3.4 가상기억장치 ※ 세그먼테이션(segmentation) 기법 ※ 페이징/세그먼테이션 혼합 기법 ◆ 개 요
◆ 개 요 - 페이지와 같이 고정 크기로 나누는 것이 아니라, 배열이나 함수와 같은 논리적인 다양한 크기인 세그먼트로 나누어 관리 - 외부 단편화 발생 ◆ 페이징 기법과 차이점 - 다양한 크기의 세그먼트를 관리하기 위해 정보를 관리하는 테이블에 세그먼트 크기가 추가됨 - 세그먼트는 논리적 의미 단위이므로 동일 세그먼트 내의 값들은 동질성을 갖는다. 따라서 접근 권한등과 같은 영역의 세분화된 보호가 가능하다 - 참조의 국부성 효과를 극대화하여 페이지 부재 현황 빈도보다 세그먼트 부재 발생 빈도가 훨씬 적다. ※ 페이징/세그먼테이션 혼합 기법 ◆ 하나의 세그먼트를 여러 개의 페이지로 분할 ◆ 외부 단편화 문제 해소, 내부 단편화 문제 최소화 ◆ 동적 주소 단위 세그먼트번호 + 페이지번호 + 변위

27 3.4 가상기억장치 3.4.1 세그먼트 기법 <동적 주소 변환과정>
SMT의 시작주소 ( b ) S d CPU S’ b+S 세그먼트번호 변위 실제 주기억 장소 내의 주소 세그먼트 프레임 번호 SMT 가상주소 V = ( p , d ) b 실행되는 프로세스는 가상 주소 v=(s,d)를 참조 SMT에서 세그먼트 S가 적재되어 있는 실제 주기억 장치 기준 주소 S’를 찾는다. 세그먼트는 페이지와 달리 가변 크기이므로 SMT 내에는 각 세그먼트가 저장된 실기억 장치 주소와 함께 세그먼트의 길이도 포함되어 있어 주어진 d값이 허용된 범위 내인지를 검사한다. 세그먼트 s’에 d를 더하여 실기억장치의 주소 r을 구한다.

28 3.4 가상기억장치 세그먼트번호 크기 시작주소 3.4.1 세그먼트 기법 가상주소 v=(2,100)
<예> 가상주소 v=(2,100) 세그먼트번호 크기 시작주소 1200 4000 1 800 5700 2 1000 2000 3 500 3200 세그먼트 번호2에서 시작주소 2000+변위100=2100

29 3.5 고속기억장치 3.5.1 복수 모듈 기억 장치 주소버스 데이터 버스
복수모듈 기억장치는 기억 장치 모듈(또는 memory bank)을 복수개를 두어 독자적으로 access할 수 있게한 것으로 인터리브된 기억 장치(Interleaved Memory)라고도 하며 그 특징은 모듈 수 만큼의 단어들에 동시 접근이 가능하다는 것이다. MAR 기억장치 -주기억장치와 CPU의 속도차의 문제점을 개선함 -기억장치 버스를 시분할하여 사용함 -기억장소의 접근을 보다 빠르게 함 -복수모듈기억장치에 사용되는 각각의 기억장치는 자체의 어드레스 레지스터와 버퍼레지스터를 가지고 독자적으로 데이터를 저장할 수 있음 -인터리빙 기법에 의해 기억 장치를 구성하는 모듈 수만큼의 단어들에 동시 접근이 가능함. MBR 데이터 버스 <단일 모듈 기억 장치의 구성>

30 3.5 고속기억장치 3.5.1 복수 모듈 기억 장치 [ 그림 5 - 29] 모듈러 기억 장치 구성 모듈 1 2 n MAR
어레이 MBR 주소버스 데이터버스

31 3.5 고속기억장치 3.5.2 인터리빙 기억 장치 ◆ 인터리빙 구조의 취약점 - 메모리 확장의 어려움
- 메모리를 여러 모듈로 나누고 각 모듈에 연속적인 주소를 번갈아 부여 - 한번의 접근 시간으로 여러 모듈에 저장된 연속적인 주소의 정보에 동시 접근하도록 하는 기법 - 인터리빙 구조에서 얻어지는 대역폭의 증가는 연속적인 메모리 주소에 저장된 자료에 접근하는 경우에 한한다 - 즉, 인터리빙 구조를 대역폭의 증가를 위해 사용되며, 접근 시간을 줄이기 위함은 아니다 ◆ 인터리빙 구조의 취약점 - 메모리 확장의 어려움 - 메모리의 주소가 각 모듈에 대하여 번갈아 부여되므로, 새로운 모듈이 추가되면 주소 연결이 완전히 변경되어야 한다

32 3.5 고속기억장치 3.5.2 인터리빙 기억 장치 U1 A1 M1 D1 A4 M4 D4 …. U2 A2 M2 D2 A5 M5
버스 경합이나 기억 장치의 충돌과 같은 문제를 해결하기 위하여 기억 장치를 복수 모듈로 구성하고 각 모듈이 동시에 접근이 가능하도록 하는 방식. U1 A1 M1 D1 A4 M4 D4 …. U2 A2 M2 D2 A5 M5 U3 A3 M3 D3 D6 A : 주 기억 장치를 통하여 한 모듈에 주소를 보내는 동안. M : 다른 모듈은 미리 보낸 주소를 이용하여 기억 장치를 접근함. D : 또 다른 모듈에서는 읽어 낸 정보를 주 기억 장치의 데이터 버스를 통하여 외부로 내보냄.

33 3.5 고속기억장치 3.5.2 인터리빙 기억 장치 MSB LSB MSB LSB MSB LSB 모듈선택 모듈 내의 주소
상위 인터리빙 주소의 상위 비트들에 의하여 모듈이 선택되고, 하위 비트들은 각 모듈 내의 기억장소의 주소를 나타냄. 프로그램과 데이터들이 독립적이어서 각각의 기억 모듈에 저장하는 것이 더 효과적인 다중 프로그래밍에 사용. - 하위 인터리빙 주소의 하위 비트들에 의하여 기억 모듈이 선택되고 상위 비트들은 각 모듈내의 기억 장소의 주소를 나타냄. - 혼합 인터리빙 상위 인터리빙과 하위 인터리빙 방식을 혼합한 방식. 전체 모듈을 몇 개의 그룹으로 나누어 각 그룹내에 있는 모듈간에 인터리빙을 함. 기억장치 뱅크 : 기억 모듈로 이루어지는 그룹. MSB LSB 모듈선택 모듈 내의 주소 MSB LSB 모듈 내의 주소 모듈선택 MSB LSB 뱅크선택 모듈내의 주소 모듈선택

34 3.5 고속기억장치 3.5.3 연관 기억 장치 ◆ 연관 기억 장치 특징 나머지 데이터에 접근하는 기억 장치
◆ 연관 기억 장치(Associative Memory) - 기억된 데이터의 일부를 이용하여 원하는 데이터의 위치를 알아낸 후 그 위치에서 나머지 데이터에 접근하는 기억 장치 - 데이터의 내용으로 병렬 탐색을 하기에 알맞게 되어 있으며, 탐색은 전체 워드 또는 한 워드의 일부만을 가지고 시행될 수 있다. - 검색시간이 아주 중요하며 짧아야 하는 곳에 주로 이용 - 각 셀이 저장 능력 뿐 아니라 외부 인자와의 내용을 비교하기 위한 비교 논리 회로 를 가지고 있어 RAM보다 비싸고 구현이 복잡하다. ◆ 연관 기억 장치 특징 - 기능 메모리이며 여러 가지 논리 기능을 수행할 수 있으며 고속이다. - 규칙성을 가진다.

35 3.5 고속기억장치 3.5.3 연관 기억 장치 쓰기동작 => RAM 읽기동작 => 연상기억메모리 매 치 레 지 스
K : 검색과정에서 인자레지스터 A의 특정영역에 대한 마스크 제공 인자 레지스터(A) N bit 키 레지스터(K) 연상기억장치 M words N bit per word (m) 출력 Input Read Write 쓰기동작 => RAM 읽기동작 => 연상기억메모리 레지스터 A = , 키 레지스터 K = 워드 1 : 워드 2 : <예> 일치 M1= 불일치M2=0

36 3.5 고속기억장치 3.5.3 연관 기억 장치 ◆ 연관 사상 캐시의 구성 ◆ 연관 사상 캐시의 동작 ◆ 연관 사상 캐시의 특징
- 캐시가 연관 기억 장치로 구성됨 - 주 기억 장치의 주소와 그것의 데이터가 캐시에 저장됨. - 캐시 워드의 크기는 주 기억 장치의 주소 비트 수와 워드당 데이터 비트 수의 합이 됨. ◆ 연관 사상 캐시의 동작 - 중앙 처리 장치가 어느 번지의 내용을 참조하고자 한다면 인자 레지스터에는 주소를 저장하고 키 레지스터는 주소 부분만 비교함. ◆ 연관 사상 캐시의 특징 - 가장 빠르고 가장 융통성 있는 캐시 구조 - 주 기억 장치의 불록이 캐시의 어느 인덱스에도 저장될 수 있음.

37 3.5 고속기억장치 3.5.4 캐시 기억 장치 ◆ 정의 ◆ 캐시 메모리의 특징
CPU보다 느린 주기억장치 접근 속도를 높이기 위하여 지역성의 원리를 고려하여 중앙 처리 장치와 주 기억 장치 사이에   작고 빠른 기억 장치를 설치하고 이곳으로 반복적으로 참조될 프로그램 및 데이터의 불록을 옮겨 놓은 후 이곳에서 호출   하여 실행시킴으로써 기억 장치 접근 시간을 단축할 수 있도록 만든 것이 캐시 기억 장치이다 ◆ 캐시 메모리의 특징 기억용량은 작으나 속도가 아주 빠른 메모리로서 CPU 가 주메모리를 호출할 때의 속도 차이를 줄임 처리 효율을 높이기 위하여, 자주 참조되는 프로그램과 자료들을 저장함으로써 프로그램의 총 실행 시간을 단축

38 3.5 고속기억장치 3.5.4 캐시 기억 장치 ◆ 동작 순서 1. 중앙 처리 장치가 주 기억 장치로부터 한 워드를 읽으려고 할 때는 먼저 그 워드가 캐시에 있는 지를 검사한다 2. 만약에 있으면 그 워드가 중앙 처리 장치로 전달되고 그렇지 않으면 그 워드가 포함된 한 블록이 주 기억 장치로부터 캐시로 읽혀지고 동시에 중앙 처리 장치로 전달된다 ◆ 적중(Hit) 중앙 처리 장치가 주 기억 장치를 참조할 때 캐시에서 참조하고자 하는 워드를 찾을 경우 ◆ 실패(Miss) 원하는 워드를 캐시에서 못 찾을 경우 ◆ 적중률(hit ratio) 적중률   = (적중의 수) / (주 기억 장치 접근의 총수) = (적중의 수) / (적중의 수 + 실패의 수) 보통 0.9 이상의 값을 가지고 있다

39 3.5 고속기억장치 3.5.4 캐시 기억 장치 변경된 캐시의 내용을 주기억장치의 같은 불록에 언제 갱신할 것인가?
◆ 캐시의 Write 동작 변경된 캐시의 내용을 주기억장치의 같은 불록에 언제 갱신할 것인가?   ◇ 직접기록(write through) 모든 쓰기 동작들이 캐시로 뿐만 아니라 주기억장치로도 동시에 행해지는 방식 [장점] 캐시에 적재된 블록의 내용과 주기억장치에 있는 그 블록의 내용이 항상 같다 [단점] 모든 쓰기 동작이 주기억장치 쓰기를 포함하므로, 쓰기 시간이 길어진다 ◇ 기록복귀(write back) 캐시에서 데이터가 변경되어도 주기억장치에는 갱신되지 않는 방식 [장점] 기억장치에 대한 쓰기 동작의 횟수가 최소화되고, 쓰기 시간이 짧아진다 [단점] 캐시의 내용과 주기억장치의 해당 내용이 서로 다르다  블록을 교체할 때는 캐시의 상태를 확인하여 갱신하는 동작이 선행되어야 하며, 그를 위하여 각 캐시 슬롯이 상태 비트를 가지고 있어야 한다 .

40 3.5 고속기억장치 3.5.4 캐시 기억 장치 ◆ 교체 알고리즘   - 캐시 실패(Miss)가 발생하여 원하는 워드를 포함하는 불록을 캐시로 불러 올 때 비어 있는 블록이 없을 경우 교체 대상의 캐시   블록을 선택하는 알고리즘 - 연관 사상 또는 집합 연관 사상 방법에서 적용                       ① 최소 최근 사용(least recently used ; LRU)    캐시 내에서 사용되지 않은 채로 가장 오래 있었던 불록을 교체 ② 선입 선출(first-in first-out ; FIFO)    캐시 내에서 가장 오래된 불록을 교체    구현이 용이하지만 특정 상황에서는 불록이 너무 자주 교체되는 단점 ③ 최소 사용 빈도(least frequently used ; LFU)    가장 적게 사용된 불록을 교체 ④ 랜덤 알고리즘    임의(random)로 선택된 불록을 교체                    

41 -감사합니다-


Download ppt "3장. 컴퓨터의 기억장치 학번 :20501033 이름 : 김현화."

Similar presentations


Ads by Google