본문 바로가기
Firmware Programming

[컴퓨터 구조] 컴퓨터 구조-CPU, ALU, Memory

by TYB 2024. 2. 8.
반응형

 

CPU란?

(Central Processor Unit)

프로그램을 메모리 장치에서 읽어

연산처리, 비교처리, 데이터 전송, 편집, 변환, 테스트와 분기 등의 데이터 처리와, 각종 입출력 장치 구동에 사용함.

 

제어장치, 연산장치, 레지스터와 데이터 버스로 구성된다.

 

레지스터(Register)
산술 논리 연산 장치 (ALU : Arithmetic Logic Unit)
제어 장치 (CU : Control Unit)
버스(BUS)

 

레지스터란?

Register

프로세서 내부에서 데이터를 일시적으로 보관하는 기억 장치로 Flip-flop와 Latch로 구성되어 있다


프로세서 레지스터의 종류
1. 법용 레지스터 - 프로그램 또는 데이터 처리에 필요한 작업을 수행하기 위해서 사용
2. 제어용 레지스터 - 프로그램이나 프로세서를 제어, 프로그램 카운터(PC : Program Counter) 등
3. 상태 레지스터 - 프로세서의 상태를 나타낸다.

 

산술 논리 연산 장치(ALU)란?

 Arithmetic Logic Unit

1. 산술 연산 수행 - 덧셈, 뺄셈 등
2. 논리 연산 수행 - AND, OR 등

3. 상태 레지스터 또는 flag 레지스터에 연산 결과 기록 - Carry 발생, overflow 발생 등

 

ALU는 레지스터에 있는 데이터만 연산이 가능하다.

 

편하게 메인메모리를 접근하기 위해선 레지스터가 필요하다라고 생각하면 됨.

 

그냥 접근하면 되지 왜 귀찮게 레지스터를 거치느냐?

ALU와 메인메모리의 읽기쓰기속도가 다르기 때문에 읽기쓰기속도가 빠른 레지스터를 사용하는거임.

 

 

제어장치 (CU)란?

Control Unit

명령을 해석하고 실행
명령을 읽고 실행하기 위한 내부 데이터 흐름 제어

 

 

 

 

버스란 디지털 회로에서 시스템의 여러 장치들을 연결하는 경로이고 아래와 같이 구분된다.

 

1. 내부 버스 (Internal Bus)
  프로세서 내부에서 레지스터와 ALU 사이의 신호를 교환하고, 그 결과를 다시 레지스터에 전달하는 경로
2. 외부 버스 (external bus)
  프로세서와 외부의 기억장치 사이, 그리고 프로세서와 I/O 장치 사이에 존재하는 버스

 

외부버스 구성
a. 데이터 버스(data bus)
  데이터를 외부 장치에 전달하거나 외부 장치로부터 읽어오는 경로
b. 어드레스 버스(address bus)
  프로세서에서 기억장치나 I/O 장치의 주소 정보 전송 경로
c. 제어 버스(control bus)
  프로세서에서 기억장치나 I/O 장치에 입출력 동작을 지시하는 제어신호를 전송하는 경로

 

 

 

 

 

반응형