임동까스
CPU란? 본문
CPU(Central Procesing Unit)기본 개념
컴퓨터 시스템을 통제하고 연산을 처리하는 장치
사용목적
- 인출 : 첫 번째 단계인 인출(Fetch)은 프로그램의 메모리에서 명령어를 불 러오는 역할을 한다. 프로그램 내부의 명령어의 위치(주소)
- 해독 : 두 번째 단계인 해독(Decode)은 인출 단계에서 가져온 명령어를 해 독하여 명령어 내의 데이터 정보와 연산 정보를 추출한 뒤, 중앙처 리 장치 내의 각 장치에 적절한 제어신호를 보내 연산, 처리에 대한 준비를 하는 단계이다.
- 실행 : 실행(Execute)은 명령어에서 추출한 두 데이터와 연산 정보를 이용 해 실제로 연산을 하는 단계를 말한다. 연산이 끝난 결과는 곧바로 다음 명령어에서 사용될지, 그렇지 않을지에 따라 메모리 단계로 갈 지, 라이트백 단계로 갈지 결정된다.
- 메모리 : 네 번째 단계인 메모리(Memory)는 연산결과가 다음 명령어에 바로 사용되지 않는다면, 결과를 메모리에 저장하는 것을 말한다.
- 라이트백 : 연산의 마지막 단계인 라이트백(WriteBack)은 이전 명령어의 연산 결과가 다음 명령어의 입력 데이터로 사용될 경우, 계산 결과를 레 지스터에 다시 쓰는 것을 말한다
히스토리
에니악 - 에드박 - 에드삭 - 80286 - i486 - 팬티엄1~4 - 멀티코어
기능
제어장치, 연상장치, 레지스터, 캐쉬메모리로 이루어짐
프로그램내장 방식
입력된 데이터와 명령어를 포그램에서 지정된 순서에 따라 수행
폰 노이만(최초 개발자) 컴퓨터 구조
4개 사이클로 수행
- 호출 : 필요한 명령어를 주기억장치에서 가져옴
- 해석 : 호출된 명령어를
- 실행 : 해석된 명령어를 산술논리 연산장치를 통하여 실행
- 저장 : 수행결과를 주기억장치에 저장하는 사이클
클록(Clock)의 속도와 명령어 처리속도
- 마이크로프로세서의 성능 측정 방법
- 1초에 클록이 몇번 발생하는지 측정
- 1초에 10^6클록단위를 MHz. 1초에 10^9클록단위를 GHz로 표현
구조 설계
연산장치(ALU)
CPU의 핵심 부분 중 하나로, 산술과 논리 연산을 수행하는 연산 회로 집합으로 구성
- 가산기 덧셈
- 보수기 뺄셈 ,1의보수 2의보수
- 시프터 곱셉 나눗셈. 왼쪽이동 곱셉 , 오른쪽 나눗셈
- 관련 레지스터 : 누산기, 데이터 레지스터, 상태 레지스터
제어장치
입력,출력,기억,연산 장치를 제어하고 감시, 주기억 장치에 저장된 명령을 차례로 해독하며 연산장치로 보내 처리되도록 지시
-명령 해독기 명령 레지스터에 있는 명령을 해독하여 부호기로 전송
-부호기 명령 해독기가 전송한 명령을 신호로 만들어 각 장치에 전송
-주소 해독기 명령 레지스터에 있는 주소를 해독하여 메모리의 실제 주소로 변환한 후, 데이터 레지스터에 저장
- 관련 레지스터 : 프로그램 카운터, 명령 레지스터, 메모리 주소 레지스터, 메모리 버퍼 레지스터
레지스터
처리중인 데이터나 처리 결과를 임시로 보관하는 CPU 내의 기억 장치. 순간기억장치
- 범용레지스터
- 포인터 레지스터
- 인덱스 레지스터
- 플래그 레지스터
작동방식
CPU는 사칙연산으로 모든 일을 처리함 ( 덧셈을 빠르게 하기 위함 )
디지털 회로(AND, OR, XOR, Not)
AND 곱셈
OR 덧셈
XOR 서로 반대 일 때 참
NOT 입력값의 반대 를 이용해 작동
사용 언어
프로그램 언어 - A = 3, B = 4 등
어셈블리어 언어 - LOAD 10 , ADD 11, STORE 12 등
기계어 - 100110 등
정리