컴퓨터구조

컴퓨터구조_07.중앙처리장치 설계

강용민 2021. 12. 14. 21:48

프로그래머 모델

프로그래머가 어셈블리 언어로 프로그램을 작성할 때 알고 있어야 할 수준으로 컴퓨터 구조를 표현한 것

 

ToyCOM 특징

  • 16비트 프로그램 카운터(PC) : 다음에 실행할 명령어의 주소를 저장한다.
  • 16비트 스택 포인터(SP) : 스택의 탑(top)을 가리킨다.
  • 16비트 명령어 레지스터(IR) : 모든 명령어는 크기가 16비트이다.
  • 8비트 상태 레지스터(SR) : 연산기의 연산 결과를 반영하여 상태 레지스터 안에 배치된 플래그의 값이 결정된다.
    • Z(제로 플래그) : 연산기의 연산 결과가 0일 때 1이다.
    • S(부호 플래그) : 연산기의 연산 결과값의 부호 비트로 설정된다.
    • C(자리올림수) : 연산기에서 산술 연산을 수행할 때 발생하는 자리올림수를 저장한다.
    • V(오버플로우) : 연산기에서 산술 연산을 수행할 때 발생하는 오버플로우를 저장한다.
    • IR(인터럽트 요청 플래그) : 중앙처리장치 외부 혹은 내부에서 인터럽트 요청이 발생하였음을 표시한다.
    • IE(인터럽트 기능 플래그) : 중앙처리장치가 인터럽트를 요청을 허용할지 결정한다.
  • 8개의 8비트 범용 레지스터 : 데이터 처리 명령어가 처리할 데이터를 저장한다.
  • 16비트 기억장치 주소 레지스터(MAR) : 중앙처리장치가 기억장치를 액세스할 때 기억장치의 주소를 저장한다.
  • 8비트 기억장치 버퍼 레지스터(MBR) : 중앙처리장치가 기억장치를 액세스할 때 임시로 데이터를 저장한다.
  • 버스
    • 내부 버스(internal bus) : 중앙처리 장치 내부에서 레지스터간 데이터를 전송한다.
    • 연산 버스(ALU bus) : 연산기는 HBus와 LBus에 실린 데이터를 연산한다. 연산 결과는 범용 레지스터 중 하나로 적재될 수 있으며, 연산 상태는 상태 레지스터(SR)의 플래그에 저장한다.
    • 외부 버스 : 중앙처리장치와 외부를 연결한다. 기억장치를 연겨하는 주소 버스, 데이터 버스, 그리고 제어 버스로 구분되어 있다.

명령어 형식

주소지정 정책 (RISC의 특징)

  • 데이터 처리 명령어는 레지스터에 대하여 동작한다.
  • 데이터 전달 명령어인 적재와 저장 명령어만 기억장치의 데이터를 액세스한다.
  • 기억장치를 액세스할 때는 레지스터 간접 주소지정방식을 사용한다.
  • 프로그램 제어 명령어는 상대 주소지정방식으로 분기 목적지를 표현한다.

명령어 설계

데이터 전달 명령어

데이터 처리 명령어

비교 및 플래그 설정 명령어

분기 명령어

서브루틴 호출 및 인터럽트 명령어

시스템 관리 명령어


명령어 사이클

 

 

마이크로오퍼레이션

'컴퓨터구조' 카테고리의 다른 글

컴퓨터구조_09.기억장치  (0) 2021.12.15
컴퓨터구조_08.제어장치  (0) 2021.12.15
컴퓨터구조_05.연산기  (0) 2021.10.06
컴퓨터구조_04.중앙처리장치  (1) 2021.10.05