[CS] CISC와 RISC

정은아·2023년 12월 29일
post-thumbnail

CPU의 언어인 ISA란 무엇인지 이해하고, 현대 CPU의 주요 설계방식인 CISC와 RISC의 정의와 차이점에 대해 알아보자.

명령어 집합

  • ISA = Instruction Set Architecture
  • CPU마다 ISA 가 다를 수 있음
  • 서로 이해할 수 있는 명령어가 다름 = 어셈블리어도 다름
  • 제어장치가 명령어를 해석하는 방식, 사용되는 레지스터의 종류와 개수, 메모리 관리 방법 등 다 달라짐

CISC

  • Complex Instruction Set Computer의 줄임말이다.
  • 복잡한 명령어 집합을 활용하는 CPU 설계 방식.
  • 가변 길이 명령어를 활용함
  • 다양한 주소 지정 방식을 사용해서 특별한 상황에서만 사용되는 독특한 주소 지정방식 존재.
  • 적은 수의 명령어만으로도 프로그램 동작 가능 = 메모리 공간 절약

CISC의 단점

  • 명령어가 복잡하고 다양하여 명령어의 크기와 실행되기까지 시간이 일정하지 않음
  • 명령어 하나를 실행하는 데에도 여러 클럭 주기가 필요함
  • 규격화 되지 않은 명령어 = 파이프라인이 제대로 동작되지 않음

RISC(CISC 보완)

  • Reduced Instruction Set Computer의 줄임말이다.
  • 규격화된 명령어, 1클럭 내외로 실행되는 명령어 지향
  • 고정 길이 명령어를 활용함
  • 파이프라이닝에 최적화 됨
  • RISC를 load-store 구조라고 부르기도 함
  • 메모리 접근을 단순화, 최소화 = 주소 지정 방식을 최소화
  • 레지스터 적극 활용
  • 사용 가능한 명령어 개수가 CISC보다 적어서 CISC보다 많은 명령으로 프로그램을 작동

CISC와 RISC를 표로 알아보기

CISCRISC
복잡하고 다양한 명령어단순하고 적은 명령어
가변 길이 명령어고정 길이 명령어
다양한 주소 지정 방식적은 주소 지정 방식
프로그램을 이루는 명령어의 수가 적음프로그램을 이루는 명령어의 수가 많음
여러 클릭에 걸쳐 명령어 수행1클럭 내외로 명령어 수행
파이프라이닝하기 어려움파이프라이닝 하기 쉬움
profile
꾸준함의 가치를 믿는 개발자

0개의 댓글