(26)
중앙처리장치 구성요소
- 연산장치(ALU, Arithmetic and Logic Unit): 산술연산, 제어 연산 기능 수행
- 제어장치(CU, Control Unit): 제어 기능 수행
- 레지스터(Register): 기억기능 수행
- 내부버스(Internal Bus): 전달 기능 수행 (CPU내부)
(28)
*버스: 레지스터와 ALU 간 데이터 전송 위해 필요
*내부버스: 중앙처리장치(CPU) 내부에서의 데이터 전송과 논리 제어를 담당하는 경로
*외부버스: 중앙처리장치(CPU)와 메모리, 주변장치를 연결하는 데이터 통로
(29)
명령어의 종류
1. 데이터 전송 명령(data transter instruction)
- 데이터를 내용의 변경 없이 한 장소에서 다른 장소로 이동시킴
- 메모리와 레지스터 사이의 전송, 레지스터 상호 간의 전송, 레지스터의 입촐력장치 사이의 전송 등의 명령 해당
| Load | 메모리 -> 레지스터 전달 명령 |
| Store | 레지스터 -> 메모리 전달 명령 |
| Move | 레지스터 - 레지스터 간의 전달 명령 |
| Input | 레지스터 - 입력장치 간의 전달 명령 |
| Output | 레지스터 - 출력장치 간의 전달 명령 |
| Push | 레지스터 -> 스택 전달 명령 |
| Pop | 스택 -> 레지스터 전달 명령 |
2. 데이터 처리 명령(data manipulation instruction)
- 데이터에 대해 산술연산, 논리연산 및 시프트 연산 수행하는 명령어
| 산술연산 명령 | - ADD, SUB, MUL, DIV: 사칙연산 - INC: 메모리나 레지스터의 내용을 1 증가시키는 명령어 - DEC: 메모리나 레지스터의 내용을 1 감소시키는 명령어 |
|
| 논리연산 명령 | - Clear, Complement, AND, OR, Exclusive-OR | |
| 시프트 명령 | - 오퍼랜드의 내용을 오른쪽 또는 왼쪽으로 한 칸씩 이동시키는 명령 | |
| 논리 시프트 | - 왼쪽이나 오른쪽 시프트에 관계 없이 패딩되는 값이 항상 0 | |
| 산술 시프트 | - 부호절대치 표현방법, 1의 보수에 의한 표현방법, 2의 보수에 의한 표현 방법에 따라 패딩되는 값이 다름 | |
| 순환 시프트 | - 원형 시프트 형태 - 시프트되어 나가는 비트는 그 값을 잃어버리지 않고 다른 한쪽 끝으로 들어가게 됨 |
|
3. 프로그램 제거명령(program control instruction)
- 프로그램의 수행순서 제어하는 명령
- 조건분기, 무저건 분기, 비교 명령, 테스트 명령 등
마이크로 오퍼레이션(Micro Operation)
- 명령어 하나를 수행하기 위한 여러 동작의 과정을 하나하나 세분화한 것
- 한 클럭 펄스(Clock Pulse) 동안 실행되는 기본동작
- 여러 개의 마티크로 오퍼레이션이 모여 하나의 명령 처리
- 명령 수행하기 위해 CPU 내의 레지스터와 플래그가 의미 있는 상태로 바뀌게 하는 동작, 레지스터에 저장된 데이터에 의해 수행됨
마이크로 오퍼레이션 종류
(1) 전송 마이크로 오퍼레이션
- 레지스터와 메모리 사이 혹은 레지스터 상호 간 이진 정보를 전송
| 레지스터 전송 | - 하드웨어 논리회로가 어떤 주어진 마이크로 오퍼레이션을 수행, 결과를 동일 레지스터 혹은 다른 레지스터에 전송하는 것 - 직렬 전송, 병렬 전송, 버스 전송 |
| 메모리 전송 | - 메모리로부터 데이터를 읽거나 쓰기 위해 동작하는 것 |
(2) 산술 마이크로 오퍼레이션
- 레지스터에 저장된 수치 데이터에 대해 산술연산 수행하는 것
- 가산, 감산, 증가, 감소, 보수 등
(3) 논리 마이크로 오퍼레이션
- 레지스터에 저장된 비수치 데이터에 대한 비트 조작 수행하는 것
- AND논리, OR논리, 배타적 OR논리 등
(4) 시프트 마이크로 오퍼레이션
- 레지스터에 저장된 데이터에 대한 시프트 연산 수행하는 것
- 좌측 시프트, 우측 시프트
마이크로 사이클 타임
- 하나의 마이크로 오퍼레이션을 수행하는 데 걸리는 시간을 말함
- CPU의 속도를 나타내는 단위로 이용
- 클럭 펄스 발생 주기 동안 수행되도록 설계되어 있음
- CPU 클럭 주기 및 마이크로 사이클 타임의 관계에 따라 동기 고정식, 동기 가변식, 비동기식으로 구분
| 동기고정식(Synchronous Fixed) | - 마이크로 오퍼레이션 중에서 작업시간이 가장 긺 - 마이크로 오퍼레이션 동작 시간을 마이크로 사이클 타임으로 정하는 방식 - 기준: 1개(가장 긴 것 기준) |
| 동기가변식(Synchronous Variable) | - 유사한 기준시간 갖는 것을 그룹화 - 수행시간이 유사한 오퍼레이션을 그룹으로 묶어 각 그룹별로 서로 다른 마이크로 사이클 타임을 지정하는 방식 - 마이크로 오퍼레이션의 수행시간이 차이가 날 때 유리 |
| 비동기식(Asynchronous) | - 모든 마이크로 오퍼레이셔넹 대하여 각각의 마이크로 사이클 타임을 지정하는 방식 - CPU의 시간낭비가 없어지지만, 제어기 구현이 복잡해 실제 사용하기는 어려움 |
기억장치의 성능
- 기억장치에서 고려해야 할 주요 성능: 액세스 속도와 용량(capacity)
(1) 액세스 속도: 단위 시간 당 얼마나 많은 데이터를 기억장치로부터 읽고 쓸 수 있는가를 나타냄
| 액세스 시간 | CPU가 주소 내용을 주고, 내용을 읽어오는 데 걸리는 시간 |
| 메모리 사이클 시간 | 액세스 시간과 다음 액세스를 시작하기 위해 필요한 동작에 걸리는 추가적인 시간을 합한 시간 |
| 전송률(bandwidth) | CPU의 기억장치 액세스에 의해 단위시간당 전송되는 문자 혹은 워드의 수 |
(2) 기억용량
- 기억장치가 저장할 수 있는 최대의 데이터량을 말함
- 단위: 주기억장치 - 바이트 혹은 워드, 보조기억장치 - 바이트 로 표현
- CPU가 한 번의 기억장치 액세스에 의해 읽거나 쓸 수 있는 비트 수
'컴퓨터 일반' 카테고리의 다른 글
| 2. 운영체제 - 운영체제의 개념 (0) | 2026.01.22 |
|---|---|
| 1. 컴퓨터 구조 - 입출력장치 및 병렬처리 (1) | 2026.01.21 |
| 1. 컴퓨터 구조 - 기억장치 (0) | 2026.01.21 |
| 1. 컴퓨터 구조 - 자료의 표현 (0) | 2026.01.21 |
| 1. 컴퓨터 구조 - 컴퓨터와 동작원리 (0) | 2026.01.13 |