CPU[명령어 사이클]
사이클
사이클 전체적으로 사진
명령어 사이클
명령어 사이클은, CPU가 하나의 명령어를 처리하는 정형화된 흐름을 명령어 사이클이라고 합니다.
즉, 실행되는 프로그램은 수많은 명령어로 이루어져 있는데, CPY가 이 명령어들을 하나씩 실행합니다.
이떄 프로그램 속 각각의 명령어들은 일정한 주기가 반복되며 실행되는데, 이 주기를 명령어 사이클 이라고 합니다.
인출 사이클
프로그램을 실행하고 나면, 메모리에 올라와있는 명령어를 CPU로 가지고 와야하는데, 이 단계를 인출 사이클이라고 합니다.
한마디로, 이전 포스터에서 다뤘던, 레지스터의 동작과정(프로그램 카운터, 명령어, 메모리 주소, 메모리 버퍼)을 말합니다.
실행 사이클
인출 사이클을 하고나면, 명령어를 실행해야 합니다.
이것이 명령어 사이클의 두번 째 과정입니다.
CPU로 가져온 명령어를 실행하는 단계가 바로 실행 사이클입니다.
즉, 제어장치가 명령어 레지스터에 담긴 값을 해석하고, 제어 신호를 발생시키는 단계가 실행 사이클입니다.
간접 사이클
인출 사이클과 실행 사이클이 계속 반복하면서 움직이는데, 이것으로 끝나지 않습니다.
이 사이에 간접 사이클이라고하는 또다른 사이클이 존재합니다.
간접 주소 지정 방식을 생각해보면, 오퍼랜드 필드에 유효 주소의 주소를 저장합니다.
즉, 메모리에 한번 접근하는게 아닌, 한번 더 접근해야한다는 것입니다.
바로 메모리에 한번 접근하고 나서, 한번 더 접근하는 이 단계가 간접 사이클 입니다.
인터럽트
인출, 실행, 간접 사이클 말고도 인터럽트가 존재하는데, 이는 다음 포스터에서 다루겠습니다.
참고 자료 :: 혼공자 [ 혼자 공부하는 컴퓨터 구조 + 운영체제 ]