[Chapter 4] 01 프로세서 구성과 동작
1. 컴퓨터 기본 구조와 프로세서
- 컴퓨터의 3가지 핵심 장치 : 마이크로 프로세서 또는 프로세서(Processor, CPU), 메모리, 입출력장치
- 버스(Bus) : 장치간에 주소, 데이터, 제어 신호를 전송하기 위한 연결 통로(연결선)
• 버스(Bus) : 장치간에 주소, 데이터, 제어 신호를 전송하기 위한 연결 통로(연결선)
- 내부버스(internal bus) : 프로세서 내부의 장치 연결
(CPU안에 구성요소들끼리 연결해주는 버스)
- 시스템 버스(system bus) : 핵심 장치 및 주변장치 연결
(마더보드에서 CPU나 메모리, IO장치는 시스템버스로 연결되어 있다)
2. 프로세서 구성 요소
※ 프로세서 3가지 구성 필수 구성요소
• 산술 논리 장치(Arithmetic Logic Unit, ALU) : 산술 및 논리 연산 등 기본 연산을 수행
• 제어 장치 (Control Unit, CU) : 메모리에서 명령어를 가져와 해독하고 실행에 필요한 장치들 을 제어하는 신호를 발생
• 레지스터 세트(register set) : 프로세서 내에 존재하는 용량은 작지만 매우 빠른 메모리
- ALU의 연산과 관련된 데이터를 일시 저장하거나 특정 제어 정보 저장
- 목적에 따라 특수 레지스터와 범용 레지스터로 분류
• 현재는 온칩 캐시(on-chip cache), 비디오 컨트롤러(video controller), 실수보조연산 프로세서 (FPU) 등 다양한 장치 포함
3. 프로세서 명령 실행
• 프로세서는 각 명령을 더 작은 마이크로 명령(microinstruction)들로 나누어 실행
1단계 다음에 실행할 명령어를 메모리에서 읽어 명령 레지스터(IR)로 가져온다.
2단계 프로그램 카운터(PC)는 그 다음 명령어의 주소로 변경된다.
3단계 방금 가져온(fetch) 명령어를 해독(decode/제어장치)하고 유형을 결정한다.
4단계 명령어가 메모리에 있는 데이터를 사용하는 경우, 데이터의 주소를 알아낸다.
5단계 필요한 경우, 데이터를 레지스터로 가져온다.
6단계 명령어를 실행한다.
7단계 1단계로 이동하여 다음 명령어 실행을 시작한다.
• 이 단계를 요약하면 인출(fetch)-해독(decode)-실행(execute).
- 주사이클(main cycle) 혹은machine cycle이라고 함