본문 바로가기
2학년 2학기/컴퓨터 구조

7.3 Micro-program example

by kkkkk1023 2024. 11. 9.

7장에서 다루는 컴퓨터 구조

AR(LD)

Mux를 통해서 PC의 값이 전달 될지, DR의 값이 전달 될지 결정된다.

 

PC(LD)

Mux를 통해서 PC의 값이 전달 될지, 메모리 값이 전달될지, AC의 값이 전달 될지 결정된다.

 

 

 

Control memory: micro program들이 저장되는 메모리

CAR

Control memory의 주소가 들어가는 레지스터

 

SBR

return address가 저장되는 레지스터

 

 

 


명령어의 format - Memory에 적재되는 명령어(16bit)

 

Opcode로 Control Memory의 주소로 변환하는 과정인 mapping을 각 Opcode에 하면 아래와 같다.

 

  • ADD인 0 0 0 0 ➡️ 0 0 0 0 0 0 0
  • BRANCH인 0 0 0 1 ➡️ 0 0 0 0 1 0 0
  • STORE인 0 0 1 0 ➡️ 0 0 0 1 0 0 0
  • EXCHANGE인 0 0 1 1 ➡️ 0 0 0 1 1 0 0

 


 

Micro 명령어의 format - Control Memory에 적재되는 명령어(20bit)

 

 


 

각 필드들의 연산 및 속성들

 

 


 

 

micro program의 명령어와 실행 로직(fetch 등)

 

 

 


 

 

 

예시) FETCH 분석


 

 

 

예시) ADD  분석

 

사실 저렇게 0 0 0 0 0 1 0에서 끝나지 않는다. 연산은 3개만 있지만 Opcode로 나타낼 수 있는 주소는 4개(0000000 ~ 0000011) 까지 있기 때문에 마지막 주소인 0 0 0 0 0 1 1에 대한 것도 포함해야한다.

 

Address F1 F2 F3 CD BR AD
0 0 0 0 0 1 1 0 0 0  0 0 0  0 0 0  0 0  0 0 1 0 0 0 0 0 0 

 

아무것나 넣는 것이 아니라 오류가 나지 않게 AD에는 FETCH를 넣어주어야한다.

따라서, 표의 의미를 살펴보면 아무 연산을 하지않고 FETCH 주소로 점프하는 것이다.

 

 

결론적인 이미지는 아래와 같다. 

 

 

 

 


micro program의 연산과 실행 로직(fetch 등)의 binary 버전