마이크로 연산(micro operation)
- 명령어 사이클(instruction cycle)은 인출(fetch) - 간접(indirect) - 실행(execute) - 인터럽트(interrupt)이란 서브사이클로 이루어지며 이중 인출과 실행 사이클만 항상 수행됨.
- 각 서브사이클(기계 사이클)은 프로세서 레지스터들이 관계된 일련의 단계로 이루어지며, 이들 단계를 가리켜 마이크로 연산이라 함.
- 마이크로 연산은 프로세서의 기능적(functional) 혹은 원자(atomic) 연산임.
1. 한 레지스터에서 다른 레지스터로의 데이터 전송
2. 한 레지스터에서 외부 인터페이스(예: 시스템 버스)로의 데이터 전송
3. 외부 인터페이스에서 레지스터로의 데이터 전송
4. 입력과 출력을 위해 레지스터들을 사용하면서, 산술 혹은 논리 연산 수행.
- 명령어 사이클(instruction cycle)은 인출(fetch) - 간접(indirect) - 실행(execute) - 인터럽트(interrupt)이란 서브사이클로 이루어지며 이중 인출과 실행 사이클만 항상 수행됨.
- 각 서브사이클(기계 사이클)은 프로세서 레지스터들이 관계된 일련의 단계로 이루어지며, 이들 단계를 가리켜 마이크로 연산이라 함.
- 마이크로 연산은 프로세서의 기능적(functional) 혹은 원자(atomic) 연산임.
인출 사이클 경우의 예)또한 프로세서의 기본적인 기능 요소를 ALU, 레지스터, 내부 데이터 통로, 외부 데이터 통로, 제어 유닛이라고 보았을 때, 모든 마이크로 연산은 다음 분류 중 하나에 속함.
- MAR, MBR, PC, IR의 네 레지스터 간 interaction으로 구성
1. PC에 담겨있는 명령어 주소를 MAR로 옮김
2. control unit이 READ 명령을 발생하여 MBR로 명령어를 가져옴
3. 다음 명령어 실행 준비를 위해 PC가 1 증가. 이와 동시에 MBR의 내용을 IR로 이동. 이들 두 마이크로 연산은 서로 영향을 미치지 않기 때문에 동시 실행 가능
위 단계를 정리해보면, 3 clock 동안 4개의 마이크로 연산이 이루어짐.
t1 : MAR <- (PC)
t2 : MBR <- Memory
t3 : PC <- (PC) + 1
IR <- (MBR)
참고: 위 명령 중 덧셈 연산은 ALU를 통해 이루어질 수도 있음.
1. 한 레지스터에서 다른 레지스터로의 데이터 전송
2. 한 레지스터에서 외부 인터페이스(예: 시스템 버스)로의 데이터 전송
3. 외부 인터페이스에서 레지스터로의 데이터 전송
4. 입력과 출력을 위해 레지스터들을 사용하면서, 산술 혹은 논리 연산 수행.
more..
TAG control line,
control unit,
hardwired,
instruction cycle,
micro operation,
microprogram,
기계 사이클,
마이크로 연산,
명령어 사이클,
제어 신호,
제어 유닛




댓글을 달아 주세요