본문 바로가기
컴퓨터 구조

[컴퓨터 구조] 메모리 구조

by IT 정복가 2022. 6. 11.
728x90

*[Mano의 컴퓨터 시스템 구조 3판]의 공부할겸 요약한 내용입니다.


메모리 계층

주 기억 장치(Main Memory)

CPU와 직접 통신하는 기억 장치로 CPU에 의하여 현재 사용되는 정보가 저장되어 있다.(DRAM)

 

보조 기억 장치(Auxiliary Memory)

이를 제외한 모든 정보가 저장되어 있으며 필요에 따라 주기억 장치에 전송한다.(Disk Drives)

 

캐시 메모리(Cache Memory)

주기억 장치의 접근 시간과 프로세서 논리 회로와의 속도 차이를 줄이기 위해 쓰인다.(SRAM)

 

[메모리를 계층구조로 나누는 이유]

1) 메모리 저장 용량과 접근 시간의 Trade-off

2) 전체 메모리 시스템의 가격을 최소화하면서 가능한 최고의 평균 접근 속도를 달성하기 위해 

메모리 계층


주 기억 장치(Main Memory)

1) 컴퓨터가 동작하는 동안 데이터와 프로그램을 저장하고 있는 비교적 크고 빠린 속도의 메모리

2) 반도체 집적회로 기술을 바탕으로 제작한 휘발성 메모리

 

RAM(Random Access Memory)

정적(Static) RAM: SRAM

1) 플립플롭들로 구성

2) 전원이 연결되어 있는 동안 저장되어 있는 정보를 유지

3) 빠른 접근 속도

4) 캐시 메모리에 사용 됨

 

동적(Dynamic) RAM: DRAM

1) MOS 트랜지스터 안의 컨덴서에 전하로 정보 저장 - 비교적 대용량

2) 전하가 시간에 따라 방전하므로 주기적인 재충전 필요

3) 전력소비가 적고 대용량 정보 저장, 상대적으로 느린 접근 속도

4) 주로 주 기억장치에 사용 됨

 

ROM(Read Only Memory)

1) 하드웨어적으로 불변하는 정보 저장

2) 전원이 꺼져도 정보 유지

3) 부트스트랩 로더(Bootstrap Loader)

 

*부트스트랩 로더

1) 초기화 프로그램을 저장하는 것으로 전원이 켜졌을 때 컴퓨터 소프트웨어를 가동하는 역할

2) 운영체제의 일부분을 디스크에서 주 기억 장치로 적재하고, 제어를 운영체제로 옮겨주는 역할

3) 컴퓨터는 전원이 켜지는 순간 프로그램 카운터의 값을 부트스트랩 로더의 시작 주소로 세팅하는 기능 제공


보조 기억 장치(Auxiliary Memory)

H/D, USB Memory, Magnetic Tape, CD 등 그 외 이동성 저장 장치 등

 

자기 디스크 원리

1) 자화 물질이 입혀진 금속 또는 플라스틱 평판으로 항상 회전

2) 디스크의 양면이 사용되고 여러 개의 디스크가 각 표면 마다 Read-Write 헤드를 가지고 하나의 동심축에 고정

3) 트랙(track)은 비트 정보를 자기적으로 수록하고 있는 동심원들

4) 트랙은 섹터(sector)라 불리는 영역으로 나뉘며 정보 전송의 최소 단위

5) Variable Recording Density 기법: 각 트랙은 같은 수의 비트를 저장

6) Zoned Bit Recording 기법: 바깥 트랙이 더 많은 비트를 저장하는 최근 기법

자기 디스크 구조

자기 디스크 특성

접근 시간(Access Time)

1) 메모리 내 기억 장소에 도달하여 내용을 얻는데 걸리는 평균시간

2) 시크 타임(Seek Time): Read-Write 헤드가 지정된 기억 장소에 도달하는데 필요한 기계적 시간

3) 트랜스퍼 타임(Transfer Time): 데이터를 장치 내부 또는 외부로 전송하는데 걸리는 시간

4) 일반적으로 시크 타임은 트랜스퍼 타임보다 길기 때문에 레코드나 블럭으로 데이터를 저장

 

전송률(Transfer Rate)

1) 장치가 데이터의 시작점에 위치한 후에 초당 전송할 수 있는 워드나 문자의 수 


캐시 메모리(Cache Memory)

참조의 국한성(Locality of Reference)

주어진 시간 동안의 메모리 참조는 국한된 영역에서만 이루어지는 경향이 있다.

캐시 메모리

캐시 메모리의 특징

1) CPU와 주기억 장치 사이에 위치하며, 상대적으로 느린 주기억 장치와 빠른 CPU의 속도 차이를 보완하기 위해 사용

2) CPU에 의해 자주 참조되는 프로그램과 데이터를 캐시 메모리에 저장하면 평균 접근 시간이 감소, 따라서 총 수행 시간 단축 가능

3) 용량은 수 KB로 부터 수 MB 정도

4) 주 기억 장치의 접근 속도보다 5~10배 빠르고 주로 SRAM을 사용

5) L1, L2, L3 캐시가 있으며 모두 휘발성이고, L3 캐시는 DRAM을 사용하기도 함

 

캐시 메모리의 기본 동작

1) CPU가 필요한 워드를 가져오려고 메모리에 접근할 때 먼저 캐시 메모리를 조사

2) 이때, 원하는 워드가 캐시 메모리에 있으면 CPU로 전송

3) 없으면, 주 기억 장치에 접근하여 이 워드를 포함하는 블락을 캐시 메모리로 전송하고 동시에 해당 워드를 CPU로 전송

 

히트율(Hit Ratio)

1) 캐시 메모리의 효율성을 측정하는 방법으로, Hit의 수를 (Hit+Miss)의 수로 나눈 값

2) Hit: CPU가 캐시 메모리에서 원하는 정보를 찾을 경우(1번의 메모리 접근이 필요)

3) Miss: CPU가 원하는 정보를 캐시 메모리에서 찾지 못하고 주 기억 장치에서 찾을 경우(2번의 메모리 접근이 필요)

4) 보통 히트율은 0.9 이상

 

교체 알고리즘(Replacement Algorithms) - 메인 메모리로 부터 캐시로 블럭 이송 시

LPU(Least Recently Used)

최근에 가장 적게 사용된 캐시의 블럭을 교체

 

LFU(Least Frequentiy Used)

사용 빈도가 가장 적은 캐시의 블럭을 교체

 

FIFO(First-In First-Out)

가장 오래된 캐시의 블럭을 교체

 

CPU의 메모리 업데이터 기법

Write-through 기법

1) 캐시 업데이트와 동시에 메인 메모리도 업데이트를 함

2) DMA 전송을 요하는 시스템에 필요

 

Write-back 기법

1) 캐시 업데이트 시에 내용이 변경되었다는 Flag만 Set해 놓고, 추후 캐시의 블럭이 교체되기 전에 Flag을 검사하여 메인메모리를 업데이트 함

 

 

728x90