Instruction set architecture (ISA)

ISA

  • 한글로 ‘명령어 집합 구조’ 하드웨어인 마이크로프로세서가 인식해서 실행할 수 있는 기계어 명령어를 의미
  • 소프트웨어 단계에서 하드웨어 단계 사이에 있음으로써 둘 사이의 중재자(번역가) 같은 느낌으로 존재
  • 인스트럭션(명령)을 바이트수준으로 인코딩해줌.
  • 프로세서마다 다를 수 있고 보통 몇 개의 군으로 나눌 수 있음. (Intel IA32 , x86-64 , IBM/Freescale Power , ARM etc.)
  • 각 프로세서 군마다 여러 종류의 프로세서 존재하고 같은 군 안에서는 보통 ISA 수준에서 호환성을 가짐.

이번 단원에서는 ISA 모델 통해 프로세서 하드웨어의 개략적 작동 방식 살펴볼 것.

  • 주의할 점은 ISA 모델 작동 방식과 실제 프로세서 작동 방식은 조금 다를 수 있다는 점.
  • ISA 모델은 명령을 순차적으로 하나하나 수행하지만 현대 프로세서는 여러 명령을 동시에 처리함으로써 더 높은 효율을 보여줌.

  • x86-64를 단순화한 Y86-64라는 instruction set을 구현해서 예시를 살펴볼 것이다.