CPU
구성
- ALU (Arithmetic Logic Unit): 산술논리 연산장치.
- CU (Control Unit): 제어부.
- 명령어의 해석과 올바른 실행을 위해 제어하는 장치.
- 1) 명령어들이 순서대로 호출되고, 2) 해독하고, 3) 제어 신호를 발생시켜 컴퓨터의 각 장치를 동작하도록 제어하는 장치.
- 내부 버스: 기억, 연산, 제어 기능을 실현하기 위해 CPU와 주기억장치, 입출력장치, 외부기억장치 등의 제어부 사이를 연결하는 통로.
- 레지스터: 처리할 명령어 저장.
- 연산에 필요한 데이터를 저장하고 빠른 속도로 접근할 수 있는 저장공간.
- 특수 목적 레지스터:
1) 메모리 주소 레지스터 (MAR): 읽고 쓰기 위한 주기억장치(RAM)의 주소 저장.
2) 프로그램 카운터 (PC): 다음에 수행할 명령어의 주소 저장.
3) 명령어 레지스터 (IR): 현재 실행 중인 명령어 저장.
4) 메모리 버퍼 레지스터 (MBR): 주기억장치에서 읽어온/저장할 데이터 임시 저장.
5) 누산기 (AC): 연산 결과 임시 저장.
- 캐시 메모리(L1): 처리 속도를 높여주는 역할.
- 속도가 빠른 장치와 느린 장치 사이에서 속도차에 따른 병목 현상을 줄이기 위한 범용 메모리.
- (8차선 도로에서 2차선으로 줄어드는 것을 순차적으로 8, 6, 4, 2차선 등 순서대로 감소시키는 것과 비슷)
- L1은 CPU에 내장되어있고 데이터 사용/참조에 가장 먼저 사용됨.
- 여기서 찾지 못하면 L2로 넘어감.
동작
- 명령어 인출 - 수행할 명령어 정보 가져오기
- 명령어 해독 - opcode라고 하는 명령어 코드를 인출하고 필요한 레지스터 준비
- 실행 - 해독된 명령어 수행
- 반영 - 수행 결과를 반영 (출력/저장)
메모리
캐시 메모리 (L2, L3)
- 휘발성 메모리.
- 조회가 가장 빠름.
- CPU와 주기억장치 사이에 있음.
- CPU가 메모리를 읽는 과정에서 자주 조회하는 정보를 캐시 메모리에 저장함으로써 재사용 시 나타날 정보의 거리를 줄임.
- 가장 먼저 L1에서 찾다가 없으면 L2, L3에서 찾게 됨.
주기억장치 (RAM)
- CPU가 현재 처리중인 데이터나 명령을 일시적으로 저장.
- 휘발성 메모리.
- 보조기억장치(HDD, SSD)보다 접근 속도가 빠름.
- 모든 프로그램은 실행되기 위해 메모리의 일부를 사용.
1) DRAM (Dynamic RAM)
- 전원이 계속 공급되더라도 주기적으로 재충전해야 함.
- 대용량 기억장치에 사용됨.
- 흔히 말하는 RAM에 해당.
2) SRAM (Static RAM): 캐시 / 레지스트리.
- 전원이 공급되는 동안 기록된 내용은 지워지지 않음. 재충전 x
- 접근 속도가 빠름 but 비쌈. 주로 캐시메모리/레지스터로 사용됨.
보조기억장치
- 비휘발성 메모리.
- 설치하는 프로그램, 파일 등 저장.
CPU와 메모리
동작
- 주기억장치: 입력장치에서 입력받은 데이터 / 보조기억장치에 저장된 프로그램 명령어 조회.
- 중앙처리장치: 프로그램 실행을 위해 주기억장치에 저장된 프로그램 명령어와 데이터를 읽어와 처리 후 결과를 다시 주기억장치에 저장.
- 주기억장치: 처리 결과를 보조기억장치에 저장 / 출력장치에 전달.
- 제어장치: 1~3번 과정에서 명령어가 순서대로 잘 실행되도록 각 장치 제어.
구조

폰노이만 구조
- CPU가 연산하는 데이터들이 보조기억장치에서 하나의 메모리에 올라감 (데이터와 명령어 동시 접근 불가능)
- 제어장치는 ALU한테 데이터의 위치를 알려줌.
- 메모리가 구분되어있지 않고 하나의 버스를 가지므로 병목현상 발생.
하버드 구조
- 메모리의 구분: 명령어 메모리 & 데이터 메모리 (데이터와 명령어 동시 접근 가능)
- 명령어 메모리는 프로그램이 사용할 명령어를 모아두고 명령어에 대한 정보를 제어장치로 전달함.
- ALU는 데이터와 명령어를 읽어서 연산 수행.
- 메모리가 역할 별로 나누어져있기 때문에 속도가 빠름.
- 하지만 구성이 많아서 비싸고 복잡하기 때문에 고장 확률 O.
현대 CPU 구조
- CPU 외부(주기억장치): 폰노이만 구조.
- CPU 내부: 하버드 구조.
- RAM과 CPU 사이에 캐시 메모리를 둬서 속도 차이 줄임.