컴퓨터 구조 07 : CPU 디자인, 마이크로 연산과 ALU

728x90

CPU 디자인, 마이크로 연산과 ALU

 

CPU 디자인

CPU 내에서 디바이스들 간의 상호 연결 방법

직접 연결 : 연결 복잡도가 장치 수의 제곱에 비례

버스 연결 : 가장 가성비 높은 연결 방식. 공통된 통신 채널을 통해 다양한 신호를 운반. 오늘날 PC가 널리 사용될 수 있도록 함.

직접 연결과 버스 연결

 

버스를 통한 레지스터 상호 연결 예1 : 멀티 플렉서를 이용

멀티 플렉서는 여러 개의 입력 신호들 중에서 선별하여 버스에 신호를 보낼 수 있다.

 

버스를 통한 레지스터 상호 연결 예2 : 상태 버스 버퍼

(버퍼는 연산의 중간 결과값을 기억함)

멀티 플렉서처럼 신호를 선택할 수 있고, Enable값을 컨트롤 할 수 있다.

 

 

 

 

 


마이크로 연산과 ALU

레지스터에 저장된 데이터에 대해 수행되는 기본적인 연산(일반적인 사칙연산과는 다름)

 

레지스터 전송 마이크로 연산 : 레지스터 사이에서 이진 정보를 전송

산술 마이크로 연산 : 레지스터에 저장된 수치 데이터에 대한 산술연산

논리 마이크로 연산 : 레지스터에 저장된 비수치 데이터에 대해 비트 조작 연산을 수행

시프트 마이크로 연산 : 레지스터에 저장된 데이터에 대해 시프트 연산을 수행

 

시프트 마이크로 연산의 예

이진수 100 = 십진수 4

시프트 좌측 이동 -> 이진수 1000 = 십진수 8 (4x2)

시프트 우측 이동 -> 이진수 10 = 십진수 2 (4/2)

 

산술 논리 장치(Arithmetic Logic Unit : ALU)

주로 정수 연산을 처리하나, 최근에는 부동 소수 연산까지 처리함

산술 연산 : 덧셈, 뺄셈, 곱셈, 나눗셈, 증가, 감소, 보수

논리 연산 : AND, OR, NOT, XOR, 시프트

왼쪽의 연산들이 산술 연산들이며, SUB의 ~B+1은 1의 보수화 시키고 1을 더한다는 뜻이므로 2의 보수와 같다.

 

* MSB와 LSB

 

 

728x90