메모리 계층은 2가지 주요 유형으로 구분된다.
- 외부 메모리 / 보조 메모리 : 자기 디스크, 광 디스크, 자기 테이프로 구성. 프로세서가 I/O 모듈을 통해 접근할 수 있는 주변 저장 장치
- 내부 메모리 / 기본 메모리 : 주 메모리, 캐시 메모리 및 CPU 레지스터로 구성. 프로세서에서 직접 액세스할 수 있다.
메모리 계층 구조
컴퓨터 시스템의 메모리 계층 구조는 각 메모리 장치의 속도, 용량, 비용에 따라 단계적으로 구성되어 있다.
CPU와 가까울수록 속도가 빠르지만 용량이 작고 비용이 높다.

1. 레지스터 (Register)
- 레지스터는 CPU 내부에 위치한 고속의 소형 메모리로 가장 자주 사용되는 데이터와 명령어를 저장한다.
- 가장 빠른 접근 속도와 작은 저장 용량을 가지고 있으며 16~64비트 정도의 크기이다.
2. 캐시 메모리 (Cache Memory)
- 캐시는 CPU 근처에 위치한 빠른 메모리 장치로, 자주 사용되거나 최근에 접근한 데이터와 명령어를 저장하여 CPU가 빠르게 데이터에 접근할 수 있도록 도와준다.
- 주 메모리보다 속도가 빠르고, 데이터에 대한 빠른 접근성을 제공한다.
L1 캐시
- 가장 빠른 속도와 가장 작은 용량을 가짐.
- CPU 코어별로 독립적으로 할당되며, 명령어 캐시와 데이터 캐시로 나누어져 있다.
- 일반적으로 16KB에서 64KB 정도 크기로, 자주 접근하는 데이터와 명령어를 저장하여 CPU의 연산 속도를 극대화함.
L2 캐시
- L1보다 느리지만 더 큰 용량을 가짐.
- 각 코어별로 할당되거나, 여러 코어가 공유할 수 있음.
- 일반적으로 256KB에서 512KB 정도 크기로, L1 캐시에 없는 데이터가 필요할 때 L2 캐시에서 접근함.
L3 캐시
- 가장 큰 용량을 가지지만 속도가 가장 느림.
- CPU 코어 전체가 공유하는 구조로, 여러 코어가 동시에 접근할 수 있다.
- 4MB에서 16MB 이상의 크기로, L2 캐시에 없는 데이터를 저장하여 메인 메모리 접근을 최소화함.
👉🏻 이렇게 캐시가 여러 계층으로 나뉘어져 있으면, CPU는 자주 사용하는 데이터를 먼저 L1에서 찾고, 없을 경우 차례대로 L2와 L3에서 찾으면서 효율적으로 메모리를 관리할 수 있다
3. 주 메모리 (Main Memory)
- 메인 메모리는 컴퓨터 시스템의 기본 메모리로 CPU에서 사용 중인 데이터와 명령어를 저장한다.
- RAM으로 구성되며, 정적 RAM(SRAM)과 동적 RAM(DRAM)이 있어.
- SRAM : 플립플롭을 사용하여 데이터를 저장하고 빠른 액세스 속도를 제공한다. 주로 캐시 메모리에 사용됨.
- DRAM : 전하 저장을 통해 데이터를 저장하며, 액세스 속도는 느리지만 높은 밀도를 제공한다. 주 메모리로 사용됨.
4. 보조 저장소 (Secondary Storage)
- HDD나 SSD 같은 비휘발성 메모리이다.
- CPU에서 현재 사용하지 않는 데이터와 명령어를 저장한다.
- 가장 큰 저장 용량을 가지면서 메모리 계층 중 가장 저렴하고 액세스 시간이 느리다.
5. 자기 디스크 (Magnetic Disk) & 자기 테이프 (Magnetic Tape)
- 자기 디스크 : 금속이나 플라스틱 재료로 제작된 원형 디스크. 컴퓨터 시스템에서 자주 사용되는 데이터를 저장한다.
- 자기 테이프 : 주로 백업 저장 장치로 사용되고, 액세스 시간이 느리지만 대량의 데이터를 안정적으로 저장 가능하다.
메모리 계층 구조의 주요 특성
- 계층이 아래로 내려갈수록 용량이 커지고, 접근시간은 증가하며, 단위 비트당 비용이 낮아진다.
계층 구조의 장점
- 효율적 메모리 관리 : 자주 사용되지 않는 데이터는 느린 메모리로 이동하고, 자주 사용되는 데이터는 빠른 메모리에 저장해 효율적인 데이터 접근을 가능하게 한다.
- 시스템 성능 향상 : 계층 구조 덕분에 CPU와 메모리 간의 속도 차이를 줄여 시스템 성능을 향상시킬 수 있다.