메모리

ROCKBELL·2023년 1월 27일
0

CS 전공지식

목록 보기
16/18

메모리

반도체의 특성을 이용하여 임시적인 내용을 기억하게 하는 것이며, 보조 기억 장치와는 다르게 휘발성을 가지고 있어 전원이 공급되지 않으면 기억하던 값이 사라짐

메모리 성능

메모리의 속도는 메모리가 CPU와 주고받는 시간을 말하며 속도가 빠를수록 성능이 좋다고 말할 수 있음

  • 리프레시 시간
    메모리는 일정시간 마다 사라지기때문에 재충전을 해줘야하는데 이 일정 시간을 리프레시 시간이라고 하며 메모리를 한번 읽고 다시 읽을 수 있는 사이 시간
  • 메모리 엑세스 시간
    명령을 받고 데이터를 읽기 시작하기까지의 시간
    명령어 주소로부터 해당 값을 가져오게 되는데 걸리는 시간
  • 사이클 시간 (리프레시 시간 + 메모리 엑세스 시간)
    메모리 작업 완료와 동시에 대기 신호를 보내 다음 신호를 받을 준비가 되었다는 신호를 주기까지의 시간

메모리 종류

주 기억장치

  • RAM (Random Access Memory)
    컴퓨터의 전원이 끊어지면 내용이 휘발되며, CPU에서 직접 접근이 가능한 유일한 장치 (사용자가 관장 못함)
    RAM의 크기는 프로그램의 수행 속도에 영향을줌
    • SRAM - 리프레시가 필요 없고, 전력 소모가 적으나 비쌈
    • DRAM - 리프레시가 필요하고 , 저가여서 많이 사용
  • ROM (Read Only Memory)
    대부분 읽을 수 있는 장치로 구성 되며 전원이 끊어져도 내용이 보존 됨

보조 기억 장치

  • 자기 디스크 - 원판 표면의 철입자의 방향으로 0과 1을 표현하고 이를 이용하여 데이터를 읽는 장치
    • 플로피 디스크 (FDD) / 하드 디스크 (HHD)
  • 광 디스크 - 빛의 반사를 이용하여 자료를 읽어내는 저장 장치
    • CD / DVD
  • 플래시 메모리 - 전자적으로 데이터를 지우고 쓸 수 있는 비 휘발성 메모리
    • USB / SSD

캐시 메모리

캐시 메모리는 CPU 내외부에 존재하며 메모리와 CPU간의 데이터 속도 향상을 위한 중간 버퍼 역할을 한다

캐시 메모리의 성능 결정 요소

캐시 크기

캐시 메모리는 메인 메모리의 일정 블록 사이즈의 데이터를 담아 두었다가 CPU에 워드 사이즈만큼의 데이터를 전송
블록 사이즈나 워드 사이즈가 크면 캐시의 Hit Ratio율도 높아짐

Hit Ratio
원하는 데이터가 Cache에 있을 확율

CPU
-> Cache 메모리 접근 가능 -> Cache Hit
-> Cache 메모리 접근 불가능 -> Cache Miss

인접성을 따져서 가장 데이터가 있을만한곳에서 랜덤하게 캐시를 탐색, 메모리 사이즈 공간이 큰만큼 랜덤하게 찍었을때 Cache Miss율이 높아짐
=> Cache Miss율 ↑ Hit Ratio율 ↓
=> 메모리 크기그 너무 크면 상대적으료 효율성 떨어질 수 있음
=> 너무 작으면 충분한 데이터를 담을 수 없음

인출 방식

  • 요구 인출 (Demand Fetch) - 필요시 요구하여 인출 하는 방식
  • 선 인출 (Pre Fetch) - 예상되는 데이터를 미리 인출하는 방식

쓰기 방식

  • Write-Through - 주기억 장치와 캐시에 동시에 기록
  • Write-Back - 데이터 변경만 캐시에 기록

교체 알고리즘

Cache Miss 발생시 기존 메모리와 교체하는 방식

  • FIFO
  • LRU
  • LFU
  • RANDOM
  • Optimal Belady's MIN

사상 기법

주기억 장치의 블록을 적재할 캐시 내의 위치를 지정하는 방법

  • Direct Mapping
  • Associative Mapping
  • Set Associative Mapping
profile
luv it

0개의 댓글