CPU의 구조와 기능 / 명령어 실행
명령어 사이클(instruction cycle)
- CPU가 한 개의 명령어를 실행하는 데 필요한 전체 과정
- 인출(fetch)사이클
- CPU가 기억장치로 부터 명령어를 읽어오는 단계
- 실행(execution)사이클
- 인출된 명령어를 실행하는 단계
- 인출(fetch)사이클
기본 명령어 사이클
명령어 실행에 필요한 CPU 내부 레지스터들
- 프로그램 카운터
- Program Counter : PC
- 누산기
- Accumulater : AC
- 명령어 레지스터
- Instruction Register : IR
- 기억장치 주소 레지스터
- Memory Address Register : MAR
- 기억장치 버퍼 레지스터
- Memory Buffer Register : MBR
데이터 통로가 표시된 CPU 내부 구조
인출 사이클(fetch cycle)
- CPU가 기억장치의 지정된 위치로부터 명령어를 읽어오는 과정
- 마이크로-연산(micro-operation)
- CPU 클록의 각 주기 동안 수행되는 기본적인 동작
인출 사이클에서의 주소 및 명령어 흐름도
실행 사이클(execution cycle)
- CPU가 명령어를 해독(decode)하고 그 결과에 따라 필요한 연산들을 수행하는 과정
- CPU가 수행하는 연산들의 종류
- 데이터 이동
- 데이터 처리
- 데이터 저장
- 프로그램 제어
실행 사이클에서의 주소 및 데이터 흐름도
인터럽트 사이클(interrupt cycle)
- 인터럽트 요구가 들어왔는지 검사하고 그 처리에 필요한 동작들을 수행하는 과정
- 인터럽트
- 프로그램 실행 중에 CPU의 현재 처리순서를 중단시키고 다른 동작을 수행하도록 요구하는 시스템 동작
- 인터럽트 서비스 루틴
- 인터럽트 요구를 처리해주기 위해 수행하는 프로그램 루틴
인터럽트 사이클이 추가된 명령어 사이클
간접 사이클(indirect cycle)
- 실행 사이클에서 사용될 데이터의 실제 주소를 기억장치로부터 읽어오는 과정
- 간접 주소지정 방식에서 사용
- 인출 사이클과 실행 사이클 사이에 위치
Leave a comment