본문 바로가기
컴퓨터공학기초 개념/컴퓨터구조

16. CPU 내부구조 - CPU 설계방식

by devraphy 2021. 8. 11.

0. 시작하기전에

- 이전 포스팅에서 명령어의 구조에 대해서 알아 보았다. 

- CPU에서는 이 명령어를 실행하기 위해, 다양한 레지스터를 이용한다.

- 명령어에 따라 사용하는 레지스터가 다를 것이고, 필요한 과정이 다를 것이다.  

- 그렇다면 이 레지스터는 어떤 구조로 설계되어 있을까? 라는 질문이 생길 수 있다.

- CPU의 설계방식에 대해 이해하면, 이 질문에 대답할 수 있다. 


1. CPU 설계방식 

- CPU를 설계하는 방식에는 대표적으로 2가지가 있다. 

 

▶ CISC (= Complex Instruction Set Computer) - 소프트웨어에 중점적이다. 

▶ RISC (= Reduced Instruction Set Computer) - 하드웨어에 중점적이다. 

 

- 위의 두가지 방식은 CPU를 설계 하는 것에 있어, 어떤 부분에 중점을 두었느냐에 따라 달라진다. 

- 최근에 애플의 M1 칩에 대해 관심을 가져본 적이 있다면 위의 두가지 설계방식에 대해 언급한 것을 볼 수 있다. 

- 차근차근 하나씩 알아보자. 

 

a) CISC와 RISC의 특징과 차이점

- 두 CPU 설계방식의 차이점은 명령어를 수정할 수 있느냐의 유무에서 온다.

 

▶ CISC

- 소프트웨어에 중점적이다. 

- 인텔에서 만든 CPU의 설계 방식이다. 

- 가변적이기 때문에 레지스터가 적다. 

- 명령어의 수정, 확장이 가능하다 == 명령어의 종류가 많다 == 호환성이 좋다. 

- 컴파일 과정을 필요로 한다 == 전력소모가 많다. 

- 즉, 가변적이다 == 복잡하다 == 실행 속도가 느리다.

 

▶ RISC

- 하드웨어에 중점적이다

- 고정적인 논리회로를 사용하기 때문에 레지스터가 많다

- 명령어의 수정이 불가능하다 == 명령어의 종류가 적다 == 호환성이 나쁘다.

- 컴파일 과정이 필요 없다 == 전력소모가 적다. 

- 즉, 고정적이다 == 단순하다 == 실행 속도가 빠르다.

 

- 위의 차이점은 어디서 오는 것일까? 

 

b) 하드웨어 중점적? 소프트웨어 중점적? 

- 세탁기를 예로 들어보자. 

- 세탁기에는 정해진 기능들이 있다. 

- 이 기능들은 변경되거나 수정될 수 없으며, 있는 그대로의 사용만 가능하다.

- 예를 들어, 기본 탈수가 30분이 걸리는데, 이를 1시간으로 변경할 수 없다는 것이다.  

- 이와 같은 방식을 하드웨어 중점적으로 설계된 방식이라고 한다. 

 

- 반대로 기능은 동일하지만, 사용자의 요구에 따라 시간을 변동할 수 있다고 해보자. 

- 이와 같은 방식을 소프트웨어 중점적으로 설계된 방식이라고 한다. 

댓글