[CA]처리장치(1)
📚처리장치 개요
- 처리장치: 데이터를 처리하는 연산 실행
- 제어장치: 연산의 실행순서를 결정하는 역할
- 중앙처리장치(CPU): 처리장치와 제어장치가 결합된 형태
- 처리장치와 제어장치의 관계
- 제어신호: 다양한 데이터 처리연산을 구동하는 2진 신호
- 상태신호: 처리장치의 여러 가지 상태를 나타냄. 제어장치가 상태신호를 이용해 실행할 연산의 순서를 정함
📄처리장치의 구성
산술논리연산장치와 레지스터들로 구성
- 산술논리연산장치(ALU): 산술, 논리, 비트연산 등의 연산을 수행
- 레지스터: 연산에 사용되는 데이터나 연산의 결과를 저장
💡산술논리연산장치(ALU)는 독립적으로 데이터를 처리하지 못하므로 반드시 레지스터들과 조합하여 데이터를 처리한다!
📚마이크로 연산
마이크로 연산은 레지스터나 기억장치에 저장되어 있는 데이터에 대해 이루어지는 기본적인 연산이다.
- 한 레지스터의 내용을 다른 레지스터로 옮기는 것
- 두 레지스터의 내요을 더하는 것
- 레지스터의 내용을 1 증가시키는 것 등
처리장치의 동작원리를 이해하기 위해 마이크로 연산을 이해해야 한다!
- 마이크로연산의 종류
- 레지스터 전송 마이크로 연산
- 산술 마이크로 연산
- 논리 마이크로 연산
- 시프트 마이크로 연산
📄레지스터 전송 마이크로 연산
- 레지스터 표현
- 레지스터 전송 마이크로 연산
한 레지스터에서 다른 레지스터로 2진 데이터를 전송하는 연산. 레지스터 사이의 데이터 전송은 연산자 ‘<-‘ 로 표시
예시 R2 <- R1 레지스터 R1의 내용이 레지스터 R2로 전송
(R1은 출발 레지스터, R2는 도착 레지스터)
- 하드웨어 측면에서의 레지스터 전송
(a) 레지스터 R1의 n개 출력은 레지스터 R2의 입력으로 연결된다. n은 레지스터 전송경로에서 R1 부터 R2로의 비트수를 뜻한다. R2는 T1에 의해 구동되는 제어 입력신호를 갖는다. 이 신호는 레지스터에 가해지는 클록과 동기화된 신호로 가정된다.
(b) T1은 시점 t에서 클록 펄스의 상승 모서리와 동기화가 시작되고, 시점 t+1에서 T1 = 1이 된다. 이때 레지스터 R1과 병렬로 연결되어 있는 레지스터 R2로 적재된다. T1이 t+1 클록의 상승 천이 시점에서 0으로 돌아오며 R1에서 R2로 단 한 번 값의 전송이 발생한다.
- 레지스터 전송문
앞의 그림을 조건문으로 표현 ▶ if(T1 = 1) then (R2 <- R1)
레지스터 전송문으로 표현 ▶ T1 : R2 <- R1
- 레지스터 전송문장에서 사용되는 기본적인 기호
📄산술 마이크로 연산
레지스터 내의 데이터에 대해 실행되는 산술연산
기본적인 산술연산: 덧셈, 뺄셈, 1 증가, 1 감소, 보수 연산
📄논리 마이크로 연산
레지스터 내의 데이터에 대한 비트를 조작하는 연산
기본적인 논리연산: AND, OR, XOR, NOT
📄시프트 마이크로 연산
레지스터 내의 데이터를 시프트 시키는 연산
- 시프트 연산을 수행하더라도 R2의 값은 변하지 않음
- sr이나 sl에 대해 입력 비트는 0으로 가정
- 출력비트 값은 버려짐
Leave a comment