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시간으로 변경할 수 없다는 것이다.
- 이와 같은 방식을 하드웨어 중점적으로 설계된 방식이라고 한다.
- 반대로 기능은 동일하지만, 사용자의 요구에 따라 시간을 변동할 수 있다고 해보자.
- 이와 같은 방식을 소프트웨어 중점적으로 설계된 방식이라고 한다.
'컴퓨터공학기초 개념 > 컴퓨터구조' 카테고리의 다른 글
18. CPU 내부구조 - 명령어와 주소지정방식 (0) | 2021.08.12 |
---|---|
17. CPU 내부구조 - 마이크로 연산과 ALU (0) | 2021.08.12 |
15. CPU 내부구조 - 명령어의 구조 (0) | 2021.08.10 |
--- 여기까지! 컴퓨터 구조, 번쩍! 복습하기! --- (0) | 2021.08.10 |
14. CPU 내부구조 - 레지스터 (0) | 2021.08.10 |
댓글