CS/컴퓨터 구조

3장 : 제어 유니트 - (2) 마이크로명령어 형식

infobox503 2024. 11. 27. 14:13

<요약>

  • 마이크로명령어
    • 형식
      • 연산 필드1(op)
      • 연산 필드2(op)
      • 조건 필드(CD)
      • 분기 필드(BR)
      • 주소 필드(ADF)

  • 마이크로명령어
    • 형식(가정)

 

  • 연산 필드
    • 2개 있으면 동시에 마이크로 연산 2개
    • 각 연산 필드의 연산 종류가 다름
      • 동시에 실행할 수 없는 명령은 각 연산 필드에 들어오지 않음
  • 조건 필드(CD)
    • 분기 여부 결정
  • 분기 필드(BR)
    • 분기 유형 정하기
  • 주소 필드(ADF)
    • 분기 발생 시, 수행해야하는 명령어 주소를 나타냄

2. 조건 필드

  • 의미
    • 분기 여부 결정
  • 종류
    • U
      • 분기
    • I
      • 간접 사이클 루틴 호출
        • 간접 사이클 루틴 : 간접 주소지정 방식에 맞는 명령어 수행법
    • S(Sign)
      • 누산기의 데이터 부호가 1이면 분기
        • (AC의 데이터가 양수, 음수냐에 따라 실행 명령이 달라짐)
    • Z(Zero)
      • 누산기의 데이터 값이 0이면 분기

3. 분기 필드

  • 의미
    • 분기 유형 정하기
  • 종류
    • JMP
      • CAR ← ADF(주소 필드)
      • 다음에 실행할 명령어를 분기 명령어로 변경(원래 수행하던 명령어 위치는 저장X)
    • CALL
      • SBR ← CAR + 1, CAR ← ADF
      • 다음에 실행해야하는 명령어는 보관해두고, 분기 명령어를 수행
    • RET
      • CAR ← SBR
      • 서브루틴 끝내고 원래 명령어로 돌아감
    • MAP
      • CAR(1) ← 1, CAR(2-5) ← IR(op), CAR(6,7) ← 0
      • 사상(Mapping) 방식으로 분기 명령어의 실행 사이클 루틴 시작 주소를 만듦
      • (그 이후에 오는 명령어로 해당 실행 사이클 루틴을 완성)
    ※ IR(op) → 명령어에 있는 연산 코드(op) ⇒ 해당 연산 코드에 맞는 실행을 수행