흔히 RAM이라고 불리는 이 장치는 명령어의 주소를 기억해두는 역할을 합니다.
이 메모리는 RAM과 ROM이 있는데요.
RAM은 전원이 꺼지면 데이터가 사라지는 휘발성 메모리이고,
ROM은 전원이 꺼져도 데이터가 유지되는 비휘발성 메모리입니다.
또한 RAM은 CPU가 실행한 명령어의 주소를 직접 접근해서 가지고 온다는 특성도 있습니다.
RAM의 종류
RAM은 크게 DRAM과 SRAM으로 나뉩니다.
DRAM은 우리가 주로 사용하는 RAM이라고 봐도 무방합니다.
DRAM은 시간이 지남에따라 저장된 데이터가 천천히 휘발되는 특성을 가지고 있지만
SRAM은 반대로 시간이 지나도 저장된 데이터가 휘발되지 않습니다.
DRAM은 발전해서 SDRAM , DDR RAM처럼 발전된형태로 대역폭이 넓어져 메모리를 CPU로 전달받고 전달하는 속도가 빨라지고 있습니다.
캐시메모리
CPU는 계속해서 메모리에 접근을 하는데 메모리가 아무리 빨라도 CPU의 레지스터보다는 느립니다.
그렇기 때문에 CPU가 아무리 좋아도 RAM이 안좋으면 CPU가 가진 빠른 연산속도라는 장점을 살리지 못하기 때문에 캐시메모리라는 것이 생겼습니다.
캐시메모리는 CPU와 메모리 사이에 있는 장치입니다. ( 물리적거리 )
그렇기 때문에 데이터를 전달하는 것이 메모리보다는 더 빠르지만 저장할 수 있는 용량이 메모리보다는 작습니다.
캐시메모리는 L1 L2 L3로 나뉘어져있는데 L1과 L2는 CPU내에 내장되어있으면서 코어 가까이에 위치해있고 L3는 CPU다이에 있습니다.
용량은 L3 L2 L1순으로 크고 속도는 L1 L2 L3순으로 빠릅니다.
또한 캐시 메모리는 데이터를 반 예측식으로 저장합니다.
캐시 히트와 캐시 미스
캐시히트란 캐시메모리가 CPU에서 자주사용할법한 메모리를 저장해두는데,
그 예측이 맞았을 때를 캐시히트 그리고 그 반대의 개념을 캐시 미스라고합니다.
이러한 캐시메모리를 100%에 가깝게 활용하려면 캐시 히트의 비율이 많아야하는데,
이러한 비율을 높이기위해 참조 지역성의 원리로 캐시메모리에 어떤걸 저장할지 결정합니다.
참조지역성의 원리에는 2가지의 지역성을 따집니다
시간 지역성 : CPU가 최근에 사용했던 메모리공간에 다시 접근하려는 경향
공간 지역성 : CPU가 접근한 메모리 근처에 접근하려는 경향
시간 지역성은 대표적으로 변수가 있습니다.
프로그래밍을 하면서 변수를 많이 사용하게 되는데 이렇게 자주 사용하는 메모리에 접근하는게 시간지역성이고
공간지역성의 예시로는 배열이있습니다. 배열은 메모리가 연속적으로 배치되는 특징이있기때문입니다.
'Computer Science' 카테고리의 다른 글
| [CS] 해시 테이블은 뭘까 (1) | 2025.07.03 |
|---|---|
| [CS] 보조기억장치와 GPU (1) | 2025.06.08 |
| [CS] CPU (0) | 2025.06.03 |
| [CS]컴퓨터가 보는 정보 (0) | 2025.05.27 |
| [CS] 컴퓨터 하드웨어와 역할 (0) | 2025.04.04 |